gpt4 book ai didi

python - 如何修复 "element not interactable"异常?

转载 作者:太空狗 更新时间:2023-10-30 02:39:34 33 4
gpt4 key购买 nike

我知道这个问题之前已经被问过很多次了,但是你如何解决“元素不可交互”的异常呢?

这是我的代码:

button = driver.find_element_by_class_name(u"infoDismiss")
type(button)
button.click()
driver.implicitly_wait(10)

这是 HTML:

<button class="dismiss infoDismiss">
<string for="inplay_button_dismiss">Dismiss</string>
</button>

这是错误信息:

selenium.common.exceptions.ElementNotInteractableException: Message: 

在说消息之后实际上什么都没有。

我花了很多时间在网上搜索,但没有找到任何可以解决我的问题的方法。非常感谢您的回答。

编辑:将“w”更改为驱动程序,以便于阅读

更新:我刚刚发现我找到了错误按钮的 HTML!真正的按钮 HTML 如下:

<button class="dismiss">
<string for="exit">Dismiss</string>
</button>

此外,我还使用了答案和评论并将我的代码编辑为如下所示:

button = driver.find_element_by_css_selector("button.dismiss")
w.implicitly_wait(10)
ActionChains(w).move_to_element(button).click(button)

现在我得到一个新的错误:

selenium.common.exceptions.WebDriverException: Message: Tried to run command without establishing a connection

错误发生在第 1 行:button = driver.find_element_by_css_selector("button.dismiss")

最佳答案

可能是该元素当前不可点击,因为它不可见。造成这种情况的原因可能是另一个元素覆盖了它或者它不在 View 中,即它在当前可查看区域之外。

试试这个

from selenium.webdriver.common.action_chains import ActionChains

button = driver.find_element_by_class_name(u"infoDismiss")
driver.implicitly_wait(10)
ActionChains(driver).move_to_element(button).click(button).perform()

关于python - 如何修复 "element not interactable"异常?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44119081/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com