python selenium单击页面按钮

时间:2018-08-02 10:43:25

标签: python selenium-webdriver

我是有关python硒的新手,我试图单击具有以下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)

任何能指出正确方向的想法都会很棒。谢谢。

1 个答案:

答案 0 :(得分:0)

您可以尝试用操作类替换点击事件

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()