【发布时间】:2021-03-15 15:55:41
【问题描述】:
Python 3.9.0、Selenium 3.141.0、Chromedriver 89.0.4389.23
HTML: DOM Structure Screenhot
我尝试了几种方法,例如:
a = self.driver.switch_to.frame(self.driver.find_element_by_xpath('//iframe[contains(@src, "google.com/recaptcha")]'))
b = self.driver.find_element_by_id("rc-anchor-container").click()
c = self.driver.switch_to.default_content()
或完全相同,但使用 WebDriverWait 和不同的定位器(按类名 - recaptcha-checkbox-checkmark、recaptcha-checkbox-border)。结果,我得到了错误:
"message":**"element not interactable"** (about checkbox element, iframe successfully switched)
..\venv\lib\site-packages\selenium\webdriver\remote\webelement.py:80: in click
self._execute(Command.CLICK_ELEMENT)
..\venv\lib\site-packages\selenium\webdriver\remote\webelement.py:633: in _execute
return self._parent.execute(command, params)
..\venv\lib\site-packages\selenium\webdriver\remote\webdriver.py:321: in execute
self.error_handler.check_response(response)
self = <selenium.webdriver.remote.errorhandler.ErrorHandler object at 0x00000274AC6A5A60>
response = {'status': 400, 'value': '{"value":{"error":"element not interactable","message":"element not interactable\\n (Sessio...\n\\tRtlGetAppContainerNamedObjectPath [0x77E57C7E+286]
\\n\\tRtlGetAppContainerNamedObjectPath [0x77E57C4E+238]\\n"}}'}
【问题讨论】:
标签: python selenium selenium-webdriver