python - 没有这样的元素例外。无法在 selenium python 中找到元素
问题描述
我想 在此页面https://www.archionweb.be/Public/Company/1930上从https://www.archionweb.be/抓取电子邮件。
电子邮件在验证码中受到保护,因此想法是单击验证码然后提取电子邮件。但是每当我尝试点击验证码按钮(我同时使用了 XPath 和 CSS 选择器)时,都会出现异常:
“没有这样的元素:无法找到元素”
请如果有人可以帮助我解决这个问题。
解决方案
由于即使在单击I am not a Robot
它之后我们也正在自动化,因此有时会再次重新验证码。能够使用以下代码单击复选框。
from selenium import webdriver
import time
from selenium.webdriver.common.action_chains import ActionChains
driver = webdriver.Chrome(executable_path="path to chromedriver.exe")
driver.maximize_window()
driver.implicitly_wait(30)
driver.get("https://www.archionweb.be/Public/Company/1930")
time.sleep(5)
iframe = driver.find_element_by_xpath("//iframe[@title='reCAPTCHA']")
driver.switch_to.frame(iframe)
time.sleep(5)
recaptcha = driver.find_element_by_class_name("recaptcha-checkbox-borderAnimation")
driver.execute_script("arguments[0].scrollIntoView(true);",recaptcha)
ActionChains(driver).move_to_element(recaptcha).click().perform()
time.sleep(2)
driver.switch_to.default_content()
推荐阅读
- sql - SQL Server 重复项 - 删除值
- javascript - 如何在运行另一个函数之前等待 fetch 完成
- php - 是否可以强制 PHP 代码继续运行,如果上传的文件超过此值时超过了诸如 upload_max_filesize 之类的 php.ini 指令?
- javascript - DataTables:使用 OR 运算符在多列中搜索
- microsoft-edge - MS Edge 远程调试检查无法连接到 Windows 远程设备
- kubernetes - Openstack/helm 的错误 nova-chart 部署
- azure - 是否有促进 Graph API 调用的服务连接类型和相应的任务?
- reactjs - Material-UI Accordion(以前的 ExpansionTable)组件不会导入
- python - 用数组列展平数据框
- python - 使用范围内的多个值制作图表