no *_*ein 2 python selenium xpath
我有一个刮板机器人,我想在遇到验证码时停止,所以不要惹恼网站.但是硒找不到它
driver.find_element_by_xpath("//*[@id='recaptcha-anchor']")
Run Code Online (Sandbox Code Playgroud)
这是xpath chrome给我的.
错误
NoSuchElementException:无法找到元素:{"method":"xpath","selector":"//*[@ id ='recaptcha-anchor']"}
任何想法为什么这不起作用?
AFAIK,验证码通常位于一个内部iframe,因此您可以iframe在搜索所需元素之前尝试切换:
frame = driver.find_element_by_xpath('//iframe[contains(@src, "recaptcha")]')
driver.switch_to.frame(frame)
driver.find_element_by_xpath("//*[@id='recaptcha-anchor']")
Run Code Online (Sandbox Code Playgroud)
如果您需要切换回iframe:
driver.switch_to.default_content()
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5281 次 |
| 最近记录: |