【问题标题】:Python Selenium : Unable to click on hrefPython Selenium:无法点击href
【发布时间】:2020-05-01 22:05:13
【问题描述】:

我正在尝试使用 Selenium Python 单击 href 链接。我收到错误 ElementNotInteractableException。我仍然能够从该元素获取文本属性,所以我知道它是正确的。但是,单击似乎不起作用。

<a href="/teacher_dashboard/sections/1725967" style="color: rgb(0, 173, 188); font-family: &quot;Gotham 5r&quot;, sans-serif; font-size: 14px; text-decoration: none;">Velaz /18-19/ 7A</a>
section_data = browser.find_element_by_xpath("//table")

tr_list = section_data.find_elements_by_xpath("tbody/tr")
print(len(tr_list))
for i in range(len(tr_list)):
    if i > 0: # ignore table header
        tr = tr_list[i]
        td_list = tr.find_elements_by_xpath("td")
        section_link = td_list[1].find_element_by_xpath("//a")
        if i ==16:
            print(len(td_list))
            print(td_list[1].text)
            print(section_link.text)
            section_link.click()

17
7
Velaz /18-19/ 7A

---------------------------------------------------------------------------
ElementNotInteractableException           Traceback (most recent call last)
<ipython-input-69-5baa70427952> in <module>
     12             print(td_list[1].text)
     13             print(section_link.text)
---> 14             section_link.click()

我也尝试了下面的代码,但这会引发一些 Javascript 错误:

webdriver.ActionChains(browser).move_to_element(section_link).click(section_link).perform()

【问题讨论】:

    标签: python selenium xpath


    【解决方案1】:

    您可以尝试使用 Javascript 单击解决 ElementNotInteractable 异常:

    例如:-

    element_to_click = driver.find_element_by_xpath("//a[text()='Export to Excel']")
    driver.execute_script("arguments[0].click();", element_to_click)
    

    这是我的代码的一部分,sn-p 将在一段时间内更改答案并使用您的代码 sn-p 更新它。

    编码愉快 :-)

    【讨论】:

    • 我尝试了browser.execute_script("arguments[0].click();", section_link),但这会将我带到其他链接!我想知道为什么 ?你能放点光吗?
    • 我真的想通了。 section_link = td_list[1].find_element_by_xpath("//a") 行有问题。当我将 xpath 更改为“a”而不是“//a”时,它工作正常。谢谢!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-02-27
    • 1970-01-01
    • 1970-01-01
    • 2017-12-08
    • 1970-01-01
    • 1970-01-01
    • 2019-01-09
    相关资源
    最近更新 更多