【发布时间】:2022-06-10 21:00:58
【问题描述】:
尝试在页面上自动注册时,我在 Selenium 中遇到此错误,我不知道如何与此按钮进行交互。我可以检查它,找到它的 XPATH,单击它,但我无法让 Selenium 去做。到目前为止,我能够与页面中的所有其他内容进行交互,除了这个。
button = driver.find_element(by=By.XPATH, value='//*[@id="mobile-title-bar"]/div/button').click() # click save button
这是我正在使用的代码,我也尝试过使用 ActionChains,但遇到了同样的问题。我假设是因为该按钮位于叠加层中(请参见屏幕截图),但由于某种原因无法获取。我在这里想念什么? 编辑:我不能分享网站 URL,这是付费墙后面的服务。
带有 HTML 元素的页面图片:
完整的错误文本:
Traceback (most recent call last):
File "C:\Users\Ryan\PycharmProjects\Albert_new_user\main.py", line 45, in <module>
button = driver.find_element(by=By.XPATH, value='//*[@id="mobile-title-bar"]/div/button').click() # click save button
File "C:\Users\Ryan\PycharmProjects\Albert_new_user\venv\lib\site-packages\selenium\webdriver\remote\webelement.py", line 89, in click
self._execute(Command.CLICK_ELEMENT)
File "C:\Users\Ryan\PycharmProjects\Albert_new_user\venv\lib\site-packages\selenium\webdriver\remote\webelement.py", line 773, in _execute
return self._parent.execute(command, params)
File "C:\Users\Ryan\PycharmProjects\Albert_new_user\venv\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 430, in execute
self.error_handler.check_response(response)
File "C:\Users\Ryan\PycharmProjects\Albert_new_user\venv\lib\site-packages\selenium\webdriver\remote\errorhandler.py", line 247, in check_response
raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.ElementNotInteractableException: Message: element not interactable
(Session info: chrome=102.0.5005.63)
Stacktrace:
Backtrace:
Ordinal0 [0x008CD953+2414931]
Ordinal0 [0x0085F5E1+1963489]
Ordinal0 [0x0074C580+836992]
Ordinal0 [0x0077A4F3+1025267]
Ordinal0 [0x00770293+983699]
Ordinal0 [0x0079449C+1131676]
Ordinal0 [0x0076FC74+982132]
Ordinal0 [0x007946B4+1132212]
Ordinal0 [0x007A4812+1198098]
Ordinal0 [0x007942B6+1131190]
Ordinal0 [0x0076E860+976992]
Ordinal0 [0x0076F756+980822]
GetHandleVerifier [0x00B3CC62+2510274]
GetHandleVerifier [0x00B2F760+2455744]
GetHandleVerifier [0x0095EABA+551962]
GetHandleVerifier [0x0095D916+547446]
Ordinal0 [0x00865F3B+1990459]
Ordinal0 [0x0086A898+2009240]
Ordinal0 [0x0086A985+2009477]
Ordinal0 [0x00873AD1+2046673]
BaseThreadInitThunk [0x76B2FA29+25]
RtlGetAppContainerNamedObjectPath [0x76F57A7E+286]
RtlGetAppCo
ntainerNamedObjectPath [0x76F57A4E+238]
【问题讨论】:
-
在点击保存按钮之前尝试执行 driver.switch_to.default_content()
-
我在 DOM 中没有看到任何框架,但仍然尝试切换到 driver.switch_to.frame(0) 我是其中之一应该可以工作
-
始终将完整的错误消息(从单词“Traceback”开始)作为文本(不是屏幕截图,不是指向外部门户的链接)(不是在 cmets 中)。还有其他有用的信息。
-
您可以为该页面添加 url,以便我们对其进行测试。
-
@furas,在问题正文中添加了错误,感谢您的提示。我无法链接到该页面,因为它是一项需要登录的付费服务。这就是为什么我发布了 HTML 的 ss 以查看我是否遗漏了任何明显的内容。感谢您的帮助!
标签: python selenium selenium-webdriver webautomation