【发布时间】:2022-01-12 20:38:01
【问题描述】:
我有以下 html 代码,我只想点击下拉菜单并选择第一个值。我该如何实现。我在从下拉菜单中选择值时遇到问题,但能够点击下拉菜单
<div id= "location-select-list" class="mb-list" role="role0">
<mb-option id='1' class='classname' role='rolename' data-auto-id="dt1" aria-disabled="False" 1 </mb-option>
<mb-option id='2' class='classname' role='rolename' data-auto-id="dt2"aria-disabled="False" 2 </mb-option>
我试过了,但没有用。
#click on the dropdown--working
WebDriverWait(driver, 20).until(EC.visibility_of_element_located((By.XPATH,
xpath_0))).click()
#selecting 1st value from the dropdown value list--not working
xpath = "//div[@id='location-select-list']//mb-option[@data-auto-id='dt1']"
WebDriverWait(driver, 5).until(EC.visibility_of_element_located((By.XPATH,
xpath))).click()
【问题讨论】:
-
1)
//div[@id='location-select-list']//mb-option[@data-auto-id='dt1']是唯一的定位器 2) 您是否尝试过使用visibility_of_element_located而不是element_to_be_clickable,尤其是对于第二个命令? 3)你能分享一个指向那个页面的链接吗? -
尝试使用
visibility_of_element_located使用select。但它会抛出错误,因为下拉列表是在div中编码的。是的,xpath 是唯一的 -
我在你的 HTML 中看不到
select。那么,如果它不存在,为什么要使用它? -
我提供的代码不包含任何
select -
但是在之前的评论中你提到“使用
select”..
标签: python-3.x selenium selenium-webdriver