python - python selenium点击页面按钮
问题描述
我是关于 python selenium 的新手,我正在尝试单击具有以下 html 结构的按钮:
<a href="javascript:doPage('2');">2</a>
-->
<a href="#doPage2" onclick="javascript:doPage('2');">2</a>
<img src="/images/common/divisionLine.gif" alt="" />
<!--
<a href="javascript:doPage('3');">3</a>
-->
<a href="#doPage3" onclick="javascript:doPage('3');">3</a>
<img src="/images/common/divisionLine.gif" alt="" />
我想像下面的代码一样单击超链接名称“2”或“3”。但它不起作用。
wait(driver, 5).until(EC.element_to_be_clickable((By.XPATH,"//a[@onclick=\"javascript:doPage('2');\"]"))).click()
当我运行我的 python 代码时,我得到了下面的错误注释。
selenium.common.exceptions.WebDriverException: Message: unknown error: Element is not clickable at point (577, 821)
任何可以为我指明正确方向的想法都会很棒。谢谢。
解决方案
您可以尝试用动作类替换点击事件,
from selenium.webdriver.common.action_chains import ActionChains
actions = ActionChains(driver)
actions.move_to_element("Your Element").click().perform()
如果有什么需要先悬停,你可以用同一个类来实现,
action.move_to_element("Your Element").build().perform()
推荐阅读
- rest - JBoss EAP 7.1 RH-SSO 7.2 Rest Service Keycloak Bearer Only AuthenticatedActionsValve.invoke 策略强制被禁用 403 Forbidden
- php - 从数组中获取键或值以在 php 中使用
- html - 未应用格式 CSS
- python - Pandas Dataframe Append 功能不持久
- python - Python 数据类型发现
- docker - 为什么我无法从我的主机连接到 dockerized 服务?
- java - 如何“缩小”画布
- object - MQL4 绘制带有文本的动态 Rectangle_Label
- r - 为什么 data.table 会忘记 R 中的列表名称?
- ruby-on-rails - 尝试获取 div 时出现未捕获的类型错误无法读取未定义的属性长度