【发布时间】:2021-10-07 03:30:53
【问题描述】:
我的目标是在下拉菜单中获取一个需要单击才能使用 python selenium 显示的元素。此外,似乎在点击之前,悬停是必要的。
我试着像这样点击下拉菜单:
element = wait().until(EC.presence_of_element_located((By.CLASS_NAME, "c-topmenu c-topmenu--create c-topmenu--userbar tw-inline-flex")))
element.click()
def wait():
return WebDriverWait(driver, 30)
并尝试使用悬停:
Hover = ActionChains(driver).move_to_element(element)
Hover.click().build().perform()
不过,我得到一个 TimeoutException 并且无法找到解决方案。
网站komoot在点击下拉菜单之前是这样的:
网站komoot展开后是这样的:
【问题讨论】:
-
你能显示a标签后面的事件吗?也许你可以简单地执行 javascript 而不是点击它
-
如果我的回答解决了您的问题,请告诉我
-
@Prophet 谢谢,是的。最初,我正在寻找具有唯一类名的另一个元素(我的问题的替代解决方案),我正在使用 EC.element_to_be_clickable 但它仍然不起作用。现在有了另一个元素,我忘记了独特性。感谢您指出仅定位存在是不够的。
标签: python selenium drop-down-menu hover