如何解决ChromeDriver 126找不到chromedriver.exe问题

本文涉及的产品
实时数仓Hologres,5000CU*H 100GB 3个月
智能开放搜索 OpenSearch行业算法版,1GB 20LCU 1个月
实时计算 Flink 版,1000CU*H 3个月
简介: 当使用Selenium与ChromeDriver 126时,遇到`chromedriver.exe`找不到的错误,可能是因为版本不匹配、文件路径错误或系统设置不当。解决方法包括:匹配Chrome浏览器版本下载ChromeDriver,确保文件在正确路径且有执行权限,以及调整系统设置允许执行。示例代码展示了如何设置代理IP、user-agent和cookie来运行Selenium爬虫。通过这些步骤,可以确保爬虫程序顺利运行。

爬虫代理.png

引言

在使用Selenium和ChromeDriver进行网页自动化时,ChromeDriver与Chrome浏览器版本不匹配的问题时有发生。最近,许多开发者在使用ChromeDriver 126时遇到了无法找到chromedriver.exe文件的错误。本文将介绍该问题的原因,并提供详细的解决方案和示例代码。

正文

问题分析

ChromeDriver 126无法找到chromedriver.exe的错误通常是由于以下几个原因:

  1. 下载的ChromeDriver版本与Chrome浏览器版本不匹配
  2. 下载的ChromeDriver文件不完整或下载路径错误
  3. 操作系统的设置导致无法执行ChromeDriver

    解决方案

  4. 下载正确版本的ChromeDriver

    • 确保下载与Chrome浏览器版本相匹配的ChromeDriver。可以从Chrome for Testing下载正确的版本。
  5. 检查文件路径和权限
    • 确保chromedriver.exe文件位于正确的目录,并具有执行权限。
  6. 更新系统设置
    • 对于macOS用户,确保系统允许运行下载的应用程序和文件。

      示例代码

      以下是一个使用代理IP的Selenium示例代码,解决ChromeDriver 126问题,并设置了user-agent和cookie。
      ```python
      from selenium import webdriver
      from selenium.webdriver.chrome.service import Service
      from selenium.webdriver.chrome.options import Options
      from selenium.webdriver.common.by import By
      from selenium.webdriver.common.proxy import Proxy, ProxyType

设置代理IP 亿牛云爬虫代理加强版

proxy_ip = "www.proxy.cn"
proxy_port = "代理端口"
proxy_username = "用户名"
proxy_password = "密码"

创建代理对象

proxy = Proxy()
proxy.proxy_type = ProxyType.MANUAL
proxy.http_proxy = f"{proxy_ip}:{proxy_port}"
proxy.ssl_proxy = f"{proxy_ip}:{proxy_port}"
proxy.add_extension(f"{proxy_ip}:{proxy_port}")

设置Chrome选项

chrome_options = Options()
chrome_options.add_argument(f'--proxy-server={proxy_ip}:{proxy_port}')
chrome_options.add_argument("user-agent=Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36")
chrome_options.add_argument("start-maximized")
chrome_options.add_argument("--ignore-certificate-errors")

设置cookie

cookie = {'name': 'example', 'value': 'cookie_value'}

设置ChromeDriver路径

driver_path = "/path/to/chromedriver.exe" # 请根据实际情况更改路径

初始化ChromeDriver

service = Service(driver_path)
driver = webdriver.Chrome(service=service, options=chrome_options)
driver.get("http://www.example.com")

添加cookie

driver.add_cookie(cookie)

打开网页

driver.get("http://www.example.com")

示例操作

search_box = driver.find_element(By.NAME, "q")
search_box.send_keys("Selenium")
search_box.submit()

关闭浏览器

driver.quit()
```

结论

ChromeDriver 126找不到chromedriver.exe的问题可以通过下载正确的版本、检查文件路径和权限、更新系统设置来解决。通过以上方法和示例代码,开发者可以有效地解决此问题,确保爬虫程序的正常运行。

相关文章
|
Web App开发 Python
python自动更新chromedriver
python自动更新chromedriver
431 0
|
Web App开发 Python
【Chromedriver】下载、安装及配置
简介:【Chromedriver】下载、安装及配置
10694 60
【Chromedriver】下载、安装及配置
|
Web App开发 数据采集 Python
让ChromeDriver 125顺利运行:解决找不到chromedriver.exe的技巧
本文介绍了如何解决Selenium使用ChromeDriver时遇到的版本不匹配问题,以及如何设置环境变量。同时,文章提供了示例代码,展示如何在Python中配置Selenium使用代理IP、设定User-Agent和Cookie进行网页抓取,以提高爬虫的效率和成功率。确保ChromeDriver与Chrome浏览器版本一致,将`chromedriver.exe`添加到环境变量,然后使用`Options`和`Proxy`类配置代理和浏览器选项,最后通过`webdriver.Chrome()`启动浏览器并执行抓取任务。
1066 0
让ChromeDriver 125顺利运行:解决找不到chromedriver.exe的技巧
|
机器学习/深度学习 传感器 编解码
史上最全 | BEV感知算法综述(基于图像/Lidar/多模态数据的3D检测与分割任务)
以视觉为中心的俯视图(BEV)感知最近受到了广泛的关注,因其可以自然地呈现自然场景且对融合更友好。随着深度学习的快速发展,许多新颖的方法尝试解决以视觉为中心的BEV感知,但是目前还缺乏对该领域的综述类文章。本文对以视觉为中心的BEV感知及其扩展的方法进行了全面的综述调研,并提供了深入的分析和结果比较,进一步思考未来可能的研究方向。如下图所示,目前的工作可以根据视角变换分为两大类,即基于几何变换和基于网络变换。前者利用相机的物理原理,以可解释性的方式转换视图。后者则使用神经网络将透视图(PV)投影到BEV上。
史上最全 | BEV感知算法综述(基于图像/Lidar/多模态数据的3D检测与分割任务)
|
机器学习/深度学习 缓存 关系型数据库
用PyTorch从零开始编写DeepSeek-V2
DeepSeek-V2是一个强大的开源混合专家(MoE)语言模型,通过创新的Transformer架构实现了经济高效的训练和推理。该模型总共拥有2360亿参数,其中每个令牌激活21亿参数,支持最大128K令牌的上下文长度。
578 14
|
11月前
|
安全 测试技术 API
如何实现API接口的自动化测试?
实现API接口的自动化测试涉及多个关键步骤:确定测试范围和目标、编写测试用例、选择自动化测试工具、搭建测试环境、编写测试脚本、执行测试、分析结果和回归测试。选择合适的工具和考虑团队熟悉度是成功的关键。常用工具包括Postman、JMeter和SoapUI。通过这些步骤和工具,可以有效提高测试效率和质量,确保API的稳定性和可靠性。
|
Web App开发 测试技术
如何让下载的chrome与chromedriver匹配
如何让下载的chrome与chromedriver匹配
920 0
|
Web App开发 缓存 安全
Chrome浏览器启动参数大全
这是一组用于定制浏览器行为的命令行参数,包括但不限于:不停用过期插件、放行非安全内容、允许应用中心脚本、停用GPU加速视频、禁用桌面通知、禁用拓展及各类API、调整缓存设置、启用打印预览、隐身模式启动、设定语言、使用代理服务器、无头模式运行等。通过这些参数,用户可以根据需求灵活调整浏览器功能与性能。
|
Web App开发 测试技术 Android开发
No Chromedriver found that can automate Chrome ‘x.x.xxxx‘的解决办法
No Chromedriver found that can automate Chrome ‘x.x.xxxx‘的解决办法
345 0
|
数据采集 存储 机器学习/深度学习
CDGA|数据治理新视角:清洗数据,让数据质量飞跃提升
在数据治理的过程中,需要建立一支专业的数据治理团队,他们不仅具备丰富的数据知识和技术技能,还需要对数据有深入的理解和洞察。他们需要对数据进行深入的分析和研究,发现数据中的问题和规律,提出合理的解决方案和策略。