当前位置: 首页 > news >正文

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

亿牛云爬虫代理.png

引言

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

正文

问题分析

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

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

解决方案

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

示例代码

以下是一个使用代理IP的Selenium示例代码,解决ChromeDriver 126问题,并设置了user-agent和cookie。

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.16yun.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的问题可以通过下载正确的版本、检查文件路径和权限、更新系统设置来解决。通过以上方法和示例代码,开发者可以有效地解决此问题,确保爬虫程序的正常运行。

相关文章:

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

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

Anaconda下安装配置Jupyter

Anaconda下安装配置Jupyter 1、安装 conda activate my_env #激活虚拟环境 pip install jupyter #安装 jupyter notebook --generate-config #生成配置文件提示配置文件的位置: Writing default config to: /root/.jupyter/jupyter_notebook_config.py检查版本&am…...

蓝队黑名单IP解封提取脚本

应用场景:公司给蓝队人员一个解封IP列表,假如某个IP满足属于某某C段,则对该IP进行解封。该脚本则是进行批量筛选出符合条件的白名单IP 实操如下:公司给了一个已经封禁了的黑名单IP列表如下(black) 公司要求…...

共享充电桩语音ic方案,展现它的“说话”的能力

随着电动汽车的普及,充电设施的便捷性、智能化需求日益凸显,共享充电桩语音IC应运而生,成为连接人与机器、实现智能交互的桥梁。本文将为大家介绍共享充电桩语音ic的概述、应用词条以及优势,希望能够帮助您。 一、NV170D语音ic概述…...

ARM 单片机裸机任务调度框架

前言: 在没有使用操作系统的情况下,一个合理的裸机任务调度方式,可以更好的提供数据的处理,和用户体验,有多种任务调度的方式。 方案 1: 从上到下的任务调度方式,C语言程序的代码是在main函数…...

.Net 8 控制台程序部署(Linux篇)

在无流量Linux环境下部署.NET8开发的控制台程序 写在前面准备远程访问安装环境程序部署1.下载并导入2.解压并配置3.发布程序4.创建Systemd服务单元文件5.启用并启动服务 写在结尾 写在前面 好久没更新文章了,今天给大家带来的是在在无流量的Linux工控机上部署.Net8…...

LeetCode:x的平方根(C语言)

1、问题概述:给你一个非负整数 x,计算并返回 x 的 算术平方根 ,返回类型得是一个整数,小数舍弃 2、示例 示例 1: 输入:x 4 输出:2 示例 2: 输入:x 8 输出:…...

深入浅出WebRTC—DelayBasedBwe

WebRTC 中的带宽估计是其拥塞控制机制的核心组成部分,基于延迟的带宽估计是其中的一种策略,它主要基于延迟变化推断出可用的网络带宽。 1. 总体架构 1.1. 静态结构 1)DelayBasedBwe 受 GoogCcNetworkController 控制,接收其输入…...

JAVA开发工具IDEA如何连接操作数据库

一、下载驱动 下载地址:【免费】mysql-connector-j-8.2.0.jar资源-CSDN文库 二、导入驱动 鼠标右击下载到IDEA中的jar包,选择Add as Library选项 如图就导入成功 三、加载驱动 Class.forName("com.mysql.cj.jdbc.Driver"); 四、驱动管理…...

简化AI模型:PyTorch量化技术在边缘计算中的应用

引言 在资源受限的设备上部署深度学习模型时,模型量化技术可以显著提高模型的部署效率。通过将模型的权重和激活从32位浮点数转换为更低位数的值,量化可以减少模型的大小,加快推理速度,同时降低能耗。 模型量化概述 定义与优势…...

拥抱AI时代:解锁Prompt技术的无限潜力与深远影响

拥抱AI时代:解锁Prompt技术的无限潜力与深远影响 引言 在人工智能的浩瀚星空中,自然语言处理(NLP)无疑是最耀眼的星辰之一。随着技术的不断演进,NLP已经从最初的简单问答系统发展成为能够生成复杂文本、理解人类情感与…...

第123天:内网安全-域防火墙入站出站规则不出网隧道上线组策略对象同步

目录 案例一: 单机-防火墙-限制端口\协议出入站 案例二:不出网的解决思路 入站连接 隧道技术 案例三:域控-防火墙-组策略对象同步 案例四:域控-防火墙-组策略不出网上线 msf cs 案例一: 单机-防火墙-限制端口\…...

博客建站4 - ssh远程连接服务器

1. 什么是SSH?2. 下载shh客户端3. 配置ssh密钥4. 连接服务器5. 常见问题 5.1. IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY! 1. 什么是SSH? SSH(Secure Shell)是一种加密的网络协议,用于在不安全的网络中安全地远程登录到其他…...

MySQL--索引(3)

1.索引创建注意点 选择合适的字段 1.不为 NULL 的字段 索引字段的数据应该尽量不为 NULL,因为对于数据为 NULL 的字段,数据库较难优化。如果字段频繁被查询,但又避免不了为 NULL,建议使用 0,1,true,false 这样语义较为清晰的短值或…...

sql_exporter通过sql收集业务数据并通过prometheus+grafana展示

下载并解压安装sql_exporter wget https://github.com/free/sql_exporter/releases/download/0.5/sql_exporter-0.5.linux-amd64.tar.gz #解压 tar xvf sql_exporter-0.5.linux-amd64.tar.gz -C /usr/local/修改主配置文件 cd /usr/local/ mv sql_exporter-0.5.linux-amd64 s…...

pytorch 笔记:torch.optim.Adam

torch.optim.Adam 是一个实现 Adam 优化算法的类。Adam 是一个常用的梯度下降优化方法,特别适合处理大规模数据集和参数的深度学习模型 torch.optim.Adam(params, lr0.001, betas(0.9, 0.999), eps1e-08, weight_decay0, amsgradFalse, *, foreachNone, maximizeFa…...

开源AI智能名片小程序:深度剖析体验优化策略,激活小程序生命力的运营之道

摘要:在移动互联网的浪潮中,微信小程序凭借其无需下载、即用即走的特性,迅速成为企业连接用户、拓展市场的重要桥梁。开源AI智能名片小程序,作为这一领域的创新尝试,旨在通过融合人工智能技术与传统商务名片的概念&…...

ML.Net 学习之使用经过训练的模型进行预测

什么是ML.Net:(学习文档上摘的一段:ML.NET 文档 - 教程和 API 参考 | Microsoft Learn 【学习入口】) 它使你能够在联机或脱机场景中将机器学习添加到 .NET 应用程序中。 借助此功能,可以使用应用程序的可用数据进行自…...

为什么 centos 下使用 tree 命令看不见 .env 文件

CentOS 下使用 tree 命令看不到 .env 文件主要有两个可能的原因: 默认情况下,tree 命令不显示隐藏文件。在 Linux 系统中,以点(.)开头的文件或目录被视为隐藏文件。.env 文件就属于这种隐藏文件。 您可能没有安装 tree 命令。如果在 CentOS …...

数据库基础与性能概述及相关术语

在计算机科学领域,特别是数据库技术中,掌握与数据库性能相关的专业词汇对于数据库管理员、开发人员及数据分析师等专业人员来说至关重要。以下是一篇关于计算机必背单词——数据库性能相关的详细解析. 一、数据库基础与性能概述 数据库是计算机科学中的…...

Leetcode 3576. Transform Array to All Equal Elements

Leetcode 3576. Transform Array to All Equal Elements 1. 解题思路2. 代码实现 题目链接:3576. Transform Array to All Equal Elements 1. 解题思路 这一题思路上就是分别考察一下是否能将其转化为全1或者全-1数组即可。 至于每一种情况是否可以达到&#xf…...

Java-41 深入浅出 Spring - 声明式事务的支持 事务配置 XML模式 XML+注解模式

点一下关注吧!!!非常感谢!!持续更新!!! 🚀 AI篇持续更新中!(长期更新) 目前2025年06月05日更新到: AI炼丹日志-28 - Aud…...

【python异步多线程】异步多线程爬虫代码示例

claude生成的python多线程、异步代码示例,模拟20个网页的爬取,每个网页假设要0.5-2秒完成。 代码 Python多线程爬虫教程 核心概念 多线程:允许程序同时执行多个任务,提高IO密集型任务(如网络请求)的效率…...

在WSL2的Ubuntu镜像中安装Docker

Docker官网链接: https://docs.docker.com/engine/install/ubuntu/ 1、运行以下命令卸载所有冲突的软件包: for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $pkg; done2、设置Docker…...

C++:多态机制详解

目录 一. 多态的概念 1.静态多态(编译时多态) 二.动态多态的定义及实现 1.多态的构成条件 2.虚函数 3.虚函数的重写/覆盖 4.虚函数重写的一些其他问题 1).协变 2).析构函数的重写 5.override 和 final关键字 1&#…...

Go 并发编程基础:通道(Channel)的使用

在 Go 中,Channel 是 Goroutine 之间通信的核心机制。它提供了一个线程安全的通信方式,用于在多个 Goroutine 之间传递数据,从而实现高效的并发编程。 本章将介绍 Channel 的基本概念、用法、缓冲、关闭机制以及 select 的使用。 一、Channel…...

C# 表达式和运算符(求值顺序)

求值顺序 表达式可以由许多嵌套的子表达式构成。子表达式的求值顺序可以使表达式的最终值发生 变化。 例如,已知表达式3*52,依照子表达式的求值顺序,有两种可能的结果,如图9-3所示。 如果乘法先执行,结果是17。如果5…...

【Linux】自动化构建-Make/Makefile

前言 上文我们讲到了Linux中的编译器gcc/g 【Linux】编译器gcc/g及其库的详细介绍-CSDN博客 本来我们将一个对于编译来说很重要的工具:make/makfile 1.背景 在一个工程中源文件不计其数,其按类型、功能、模块分别放在若干个目录中,mak…...

系统掌握PyTorch:图解张量、Autograd、DataLoader、nn.Module与实战模型

本文较长,建议点赞收藏,以免遗失。更多AI大模型应用开发学习视频及资料,尽在聚客AI学院。 本文通过代码驱动的方式,系统讲解PyTorch核心概念和实战技巧,涵盖张量操作、自动微分、数据加载、模型构建和训练全流程&#…...

认识CMake并使用CMake构建自己的第一个项目

1.CMake的作用和优势 跨平台支持:CMake支持多种操作系统和编译器,使用同一份构建配置可以在不同的环境中使用 简化配置:通过CMakeLists.txt文件,用户可以定义项目结构、依赖项、编译选项等,无需手动编写复杂的构建脚本…...