Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 3.x 如何使用Selenium Python,让它遍历网页中所需的每个select标记,然后始终选择[1]或第一个选项?_Python 3.x_Selenium Webdriver_Dynamic_Drop Down Menu - Fatal编程技术网

Python 3.x 如何使用Selenium Python,让它遍历网页中所需的每个select标记,然后始终选择[1]或第一个选项?

Python 3.x 如何使用Selenium Python,让它遍历网页中所需的每个select标记,然后始终选择[1]或第一个选项?,python-3.x,selenium-webdriver,dynamic,drop-down-menu,Python 3.x,Selenium Webdriver,Dynamic,Drop Down Menu,页面中选择下拉列表的数量可能会有所不同,具体取决于用户选择上载到网站的文件数量(从1个到12个左右)。因此,基本上,找到一个必需的选择下拉列表,然后在做出正确的选择后,继续或向下滚动到下一个具有必需下拉列表的div,直到所有下拉列表都做出正确的选择,以便表单提交可以向前移动 <select class="form-control" id="dynamic-id" required=""> <option value="">[Choose Option]</o

页面中选择下拉列表的数量可能会有所不同,具体取决于用户选择上载到网站的文件数量(从1个到12个左右)。因此,基本上,找到一个必需的选择下拉列表,然后在做出正确的选择后,继续或向下滚动到下一个具有必需下拉列表的div,直到所有下拉列表都做出正确的选择,以便表单提交可以向前移动

<select class="form-control" id="dynamic-id" required="">
    <option value="">[Choose Option]</option>
    <option value="random_value">ALWAYS SELECT ME</option>
</select>

...

<select class="form-control" id="dynamic-id" required="">
    <option value="">[Choose Option]</option>
    <option value="random_value">ALWAYS SELECT ME</option>
</select>
输出打印出36个下拉列表,但它仅为第一个选择正确的选项


我非常感谢您提供有关如何执行此操作的任何信息。

您可以编辑您的问题,以包含您为解决问题而编写的selenium代码吗?为clarityCan编辑您的问题,以包含您为解决问题而编写的selenium代码吗?为清晰起见进行编辑
try:
    required_dropdowns = driver.find_elements_by_xpath("//select[@required]/option")

    print(len(required_dropdowns))

    for each_dropdown in required_dropdowns:
        required_dropdowns[1].click()
        time.sleep(2)

except:
    NoSuchElementException
    print("Could not find required dropdown"):
    time.sleep(2)