python - 如何在 python 中用 selenium 单击 <ul> 元素中的 <li> 元素列表?

标签 python selenium

enter image description here

我试图在下拉菜单中选择 2002。 它在任何时候都不起作用。 我用的是 xpath

driver.find_element_by_xpath("html/body/main/div/form/div[3]/div[1]/section/div[3]/fieldset/div[7]/dl[1]/dd/ul/li[1]/a").click()

但它不起作用..我尝试了我得到的所有解决方案... 我该如何选择它?

最佳答案

如果您能够打开下拉项目但无法点击项目,您应该尝试使用 Explicit Waits使用 WebDriverWait 等待此元素可见并启用点击,如下所示:-

from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC

element = WebDriverWait(driver, 10).until(EC.element_to_be_clickable((By.CSS_SELECTOR, "ul#ulBirthYear a[data-value='2002']")))
element.click()

或者

element = WebDriverWait(driver, 10).until(EC.element_to_be_clickable((By.LINK_TEXT, "2002")))
element.click()

关于python - 如何在 python 中用 selenium 单击 <ul> 元素中的 <li> 元素列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40097838/

相关文章:

css - 使用 xpath 或 css : How to get something which is selected on page

python - 从链接下载 pdf 但服务器重定向到主页

python - 使用 Headless Firefox 时 Selenium 的屏幕截图分辨率错误

python - 如何访问在模块内定义的变量?

python - 如何制作一个函数,一次返回一个列表中的项目?

python - 用于 Linux 的 Python 中的垃圾收集

python - Django : Connection refused to live_server_url

java - 如何切换到窗口身份验证弹出窗口并输入凭据?

python - 如何使用另一个命名元组列表附加到列表?

python - 如何在 python 中使用 urllib2 加快获取页面的速度?