页面中选择下拉菜单的数量可能有所不同,具体取决于用户选择上传到网站的文件数量(从1到12个左右)。因此,基本上,找到一个 required 选择下拉列表,然后进行正确的选择后,继续移动或向下滚动到具有 required 下拉列表的下一个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>
我试图这样做
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)
输出会打印出36个下拉列表,但只为第一个选择正确的选项。
我非常感谢您提供有关执行此操作的任何意见。