Selenium 自动化,如何下载正确的 ChromeDriver
在 Python 的 Selenium 自动化操作中,chromedriver 是不可或缺的驱动程序。没有正确安装对应版本的驱动,运行代码时常常会遇到报错问题,比如 “session not created: This version of ChromeDriver only supports Chrome version XX”。
今天,徐师兄带大家详细聊聊如何查看浏览器版本、下载正确的 chromedriver,以及其他浏览器驱动的获取方法,让你的自动化测试畅通无阻!
一、如何查看 Chrome 浏览器版本
在下载 chromedriver 之前,首先需要确认当前使用的 Chrome 浏览器版本号,因为驱动程序需要与浏览器版本严格匹配。以下是查看方法:
- 打开 Chrome 浏览器。
- 在地址栏输入
chrome://version/并按回车。 - 页面中会显示浏览器的详细信息,包括版本号。
如下图所示:

比如此处版本号为 79.0.3945.88,后续在下载驱动时需选择与此版本匹配的 chromedriver。
二、下载适配的 ChromeDriver 驱动
chromedriver 是 Selenium 用于操控 Chrome 浏览器的必备工具。不同版本的 Chrome 浏览器需要对应版本的驱动程序,否则会出现兼容性问题。以下是具体步骤:
国内网盘下载地址
国内网盘下载地址
国内网盘下载地址
提供了常用的版本


1. 查找 ChromeDriver 的下载地址
目前推荐以下两个稳定的下载源:
- 国内网盘下载地址
- 关于ChromeDriver最新下载地址:https://googlechromelabs.github.io/chrome-for-testing/
这两个地址都可以快速获取到所需版本。
2. 确定版本号并选择适配文件
打开上述下载链接后,找到与你 Chrome 版本匹配的 chromedriver 版本。例如:
- Chrome 版本为
79.0.3945.88,需下载chromedriver 79.0.x。
如下图所示,你可以在页面上清楚地找到需要的版本:

3. 下载并解压
点击目标版本后,会跳转到系统选择页面。根据你使用的操作系统(Windows、Mac、Linux),下载对应的 .zip 文件。
下载完成后,将其解压,即可获得 chromedriver.exe 文件:

4. 配置环境变量
为了让代码能够正确调用 chromedriver,需将解压后的路径添加到系统的环境变量中:
- Windows:在系统设置中编辑
Path环境变量,添加chromedriver.exe的完整路径。 - Mac/Linux:将解压文件放在
/usr/local/bin或其他可访问路径。
三、其他浏览器驱动下载
如果你的自动化操作涉及其他浏览器,Selenium 也支持多种浏览器驱动。以下是几个常见驱动的下载地址:
1. Firefox 浏览器驱动
- 驱动名称:
GeckoDriver - 下载地址:https://github.com/mozilla/geckodriver/releases/
在页面上选择适合的版本与系统,下载后解压配置即可。
2. IE 浏览器驱动
- 下载地址:http://selenium-release.storage.googleapis.com/index.html
注意:IE 浏览器的兼容性较差,建议尽量避免使用。
四、常见问题解答
-
Q:下载的 ChromeDriver 与浏览器版本不匹配怎么办?
A:请重新检查浏览器版本(通过chrome://version),然后到下载页面选择正确的驱动版本。如果使用淘宝镜像,记得多刷新页面,确保列表是最新的。 -
Q:环境变量配置后仍无法识别驱动怎么办?
A:可以直接在代码中指定chromedriver的绝对路径,例如:from selenium import webdriver driver = webdriver.Chrome(executable_path="C:/path/to/chromedriver.exe") -
Q:如何验证驱动是否安装成功?
A:在命令行输入chromedriver --version,如果显示驱动的版本信息,则说明安装成功。
五、总结
通过本篇文章,你应该已经掌握了如何查看 Chrome 版本、下载匹配的 chromedriver,以及其他浏览器驱动的下载方法。在实际项目中,版本匹配和路径配置是关键所在,只有确保正确操作,才能顺利运行自动化测试。
希望徐师兄的这篇教程对你有所帮助,赶紧动手实践吧!
如果觉得文章有帮助,记得收藏加关注,让我们一起进步!
相关文章:
Selenium 自动化,如何下载正确的 ChromeDriver
在 Python 的 Selenium 自动化操作中,chromedriver 是不可或缺的驱动程序。没有正确安装对应版本的驱动,运行代码时常常会遇到报错问题,比如 “session not created: This version of ChromeDriver only supports Chrome version XX”。 今天…...
[Linux]redis5.0.x升级至7.x完整操作流程
1. 从官网下载最新版redis: 官网地址:https://redis.io/download 注:下载需要的登录,如果选择使用github账号登录,那么需要提前在github账号中取消勾选“Keep my email addresses private”(隐藏我的邮箱…...
Java字符编码与正则表达式深度解析
Java字符编码与正则表达式深度解析 1. 字符编码发展 1.1 ASCII 码 在计算机最初发明时,主要用于数值计算,但随着计算需求的增加,人们发现计算机可以用来处理文本信息。因此,将字符映射为数字来表示。 字母 ‘A’ 映射为 65&am…...
【C++】B2099 矩阵交换行
博客主页: [小ᶻ☡꙳ᵃⁱᵍᶜ꙳] 本文专栏: C 文章目录 💯前言💯题目描述题目描述输入格式输出格式输入输出样例输入 #1输出 #1 💯题目分析💯不同解法分析我的做法实现步骤:优点:不足&#…...
论文解读 | NeurIPS'24 IRCAN:通过识别和重新加权上下文感知神经元来减轻大语言模型生成中的知识冲突...
点击蓝字 关注我们 AI TIME欢迎每一位AI爱好者的加入! 点击 阅读原文 观看作者讲解回放! 作者简介 史丹,天津大学博士生 内容简介 大语言模型(LLM)经过海量数据训练后编码了丰富的世界知识。最近的研究表明,…...
edeg插件/扩展推荐:助力生活工作
WeTab 此插件在我看来有2个作用 1.改变edeg的主页布局和样式,使其更加精简,无广告 2.提供付费webtab Ai(底层是chatGpt) 沉浸式翻译 此插件可翻译网页的内容 假设我们浏览github 翻译前 翻译后 Better Ruler 可以对网页的距离进行测量 适合写前端的小伙伴 用法示例:...
基于Python读取ZIP和TAR格式压缩包教程
在数据处理和文件管理中,压缩包(如ZIP、TAR等格式)的使用非常普遍。Python提供了多种库来读取和处理这些压缩包。本文将介绍如何使用Python的内置库和第三方库来读取ZIP和TAR格式的压缩包。 1、读取ZIP文件 Python的zipfile模块提供了处理Z…...
懒人不下床型遥控方案--手机对电脑的简单遥控(无收费方案)
兄弟们,天气越发寒冷,不得不说,对像我这种喜欢看直播睡觉的懒狗越发的不友好了,每次昏昏欲睡但还要下床关直播的操作就像泡完温泉直接冲凉水澡,透心凉,心飞扬。 最进也是有时间找找合适的懒人方案解决这个…...
人工智能知识分享第八天-机器学习_泰坦尼克生存预估线性回归和决策树回归对比案例
泰坦尼克生存预估案例 import pandas as pd from sklearn.model_selection import train_test_split from sklearn.tree import DecisionTreeClassifier from sklearn.metrics import classification_report import matplotlib.pyplot as plt from sklearn.tree import plot_t…...
html中下拉选框的基本实现方式及JavaScript动态修改选项内容情况总结
最近项目中使用到了下拉选项以及通过js判断动态改变选项值的相关操作,查询了一些相关内容,在此记录一下,以免后续再碰到布置如何书写。 一、html中下拉选框的基本方式 在 HTML 中,创建下拉选择框(也叫选择菜单&#…...
sql server期末复习
表操作 创建create 删除drop 修改alter 数据操作 查询 select from <tableName> 插入 insert into <tableName> values 修改 update <tableName> set 删除 delete from <tableName> 授权与收回对数据的操作权限 授予 grant <权…...
LabVIEW语言学习过程是什么?
学习LabVIEW语言的过程可以分为几个阶段,每个阶段的重点内容逐步加深,帮助你从入门到精通。以下是一个简洁的学习过程: 1. 基础入门阶段 理解图形化编程:LabVIEW是一种图形化编程语言,与传统的文本编程语言不同&am…...
小程序租赁系统开发的优势与应用前景分析
内容概要 小程序租赁系统是一种新兴的数字化解决方案,旨在为用户提供更加便捷与高效的租赁服务。它通常包括一系列功能,如在线浏览、即时预定、支付功能以及用户反馈机制。这些系统在使用上极为友好,让用户能够轻松选择所需的商品或服务&…...
『SQLite』安装与基本命令语法
SQLite安装 Windows: 访问 SQLite 的安装网页:https://www.sqlite.org/download.html.向下滚动页面到“Precompiled Binaries for Windows”部分。下载适用于你的系统架构(32-bit 或 64-bit)的预编译二进制文件。将下载的 ZIP 文…...
Unity-Mirror网络框架-从入门到精通之Benchmark示例
文章目录 前言什么是Benchmark?Benchmark 简要说明Benchmark示例BenchmarkNetworkManagerMonsterMovementPlayerMovementInterestManagement性能指标 BenchmarkIdle示例BenchmarkPrediction示例BenchmarkStinkySteak示例 前言 在现代游戏开发中,网络功能…...
毕业项目推荐:基于yolov8/yolov5的行人检测识别系统(python+卷积神经网络)
文章目录 概要一、整体资源介绍技术要点功能展示:功能1 支持单张图片识别功能2 支持遍历文件夹识别功能3 支持识别视频文件功能4 支持摄像头识别功能5 支持结果文件导出(xls格式)功能6 支持切换检测到的目标查看 二、数据集三、算法介绍1. YO…...
今日头条ip属地根据什么显示?不准确怎么办
在今日头条这样的社交媒体平台上,用户的IP属地信息对于维护网络环境的健康与秩序至关重要。然而,不少用户发现自己的IP属地显示与实际位置不符,这引发了广泛的关注和讨论。本文将深入探讨今日头条IP属地的显示依据,并提供解决IP属…...
FPGA设计-如何使用后端工具
目录 简介 布线布局 设计前期 布局布线策略 兼谈如何做第一次布局布线 正确看待map之后的资源占用报告 简介 本章节主要说明Xilinx的一些后端工具能为我们做什么在什么情况下我们考虑使用这些工具至于这些工具具体如何使用可以看Xilinx提供的相关文件 可从www.xilinx.com…...
苍穹外卖04——Redis初入门 在店铺打烊or营业状态管理功能中的使用
Redis入门 redis简介 它以键值对的形式存储数据在内存中,并且以极高的性能和灵活性而著称,通常用于缓存、消息代理以及持久化数据。 - 基于内存存储,读写性能高- 适合存储热点数据(热点商品、资讯、新闻)- 企业应用广泛Windows版下载地址:https://github.com/microsoft…...
【MySQL关于数据库和表结构的增删查改】
数据库和表结构的基本语法 数据库命令关于字符集语法 表操作语法创建表查看表结构修改表修改表名增加字段同时修改字段名和字段数据类型仅修改字段数据类型删除字段 删除表 备份和恢复备份恢复 mysql -h 127.0.0.1 -P 3306 -u root -p mysql -u root -h 和 -p 默认 进入MySQL程…...
CoNLL-2003数据集深度解析:为什么它仍然是NLP命名实体识别的黄金标准?
CoNLL-2003数据集深度解析:为什么它仍然是NLP命名实体识别的黄金标准? 在自然语言处理(NLP)领域,命名实体识别(NER)一直是核心任务之一。而谈到NER,就不得不提CoNLL-2003数据集——这…...
终极Cursor Pro破解方案:三步实现全功能永久使用
终极Cursor Pro破解方案:三步实现全功能永久使用 【免费下载链接】cursor-free-vip [Support 0.45](Multi Language 多语言)自动注册 Cursor Ai ,自动重置机器ID , 免费升级使用Pro 功能: Youve reached your trial re…...
04月15日AI每日参考:Stanford AI指数报告揭示Agent时代来临,Google I/O确认5月举行
今日概览今天有两件事值得重点关注。Stanford HAI发布2026年AI指数报告,数据显示AI Agent已能完成66%的真实世界计算机任务,中美AI差距基本消除——这不是预测,是已发生的事实。与此同时,Google确认I/O大会5月19-20日举行…...
OFA图文语义蕴含系统应用场景:AI驱动的内容安全审核方案
OFA图文语义蕴含系统应用场景:AI驱动的内容安全审核方案 1. 引言:当图文不符成为网络常态 你有没有遇到过这样的情况?刷社交媒体时,看到一张触目惊心的图片,配文讲述一个悲惨的故事,但仔细一看࿰…...
【maaath】Flutter 三方库 dio 的鸿蒙化适配指南:网络请求与数据列表实践
Flutter 三方库 dio 的鸿蒙化适配指南:网络请求与数据列表实践 欢迎加入开源鸿蒙跨平台社区:https://openharmonycrossplatform.csdn.net一、引言 我在移动应用开发中意识到,网络请求是最基础也是最核心的功能之一。随着开源鸿蒙生态的蓬勃发…...
ffmpeg的安装与配置
一、ffmpeg简介FFmpeg 是一套开源、免费且功能极其强大的跨平台音视频处理框架,在业界被广泛誉为“音视频处理的瑞士军刀”。无论你是想进行简单的格式转换,还是开发复杂的流媒体服务,FFmpeg 都是目前最核心的底层工具。以下是关于它的核心简…...
Windows Subsystem for Android 终极指南:在 Windows 11 上无缝运行 Android 应用
Windows Subsystem for Android 终极指南:在 Windows 11 上无缝运行 Android 应用 【免费下载链接】WSA Developer-related issues and feature requests for Windows Subsystem for Android 项目地址: https://gitcode.com/gh_mirrors/ws/WSA 想在 Windows …...
终极指南:PointNet激活函数性能大比拼 ReLU、LeakyReLU与Swish深度测试
终极指南:PointNet激活函数性能大比拼 ReLU、LeakyReLU与Swish深度测试 【免费下载链接】pointnet PointNet: Deep Learning on Point Sets for 3D Classification and Segmentation 项目地址: https://gitcode.com/gh_mirrors/po/pointnet PointNet作为3D点…...
告别截图!手把手教你用Trae IDE + MCP插件自动解析Swagger/Yapi接口文档
告别截图!手把手教你用Trae IDE MCP插件自动解析Swagger/Yapi接口文档 在前后端协作开发中,接口文档的频繁查阅和手动复制粘贴是每个开发者都经历过的效率黑洞。想象一下这样的场景:你正在开发一个包含30多个字段的复杂表单页面,…...
AI人体骨骼关键点检测作品集:多场景骨架图生成,效果直观一目了然
AI人体骨骼关键点检测作品集:多场景骨架图生成,效果直观一目了然 1. 引言 1.1 技术亮点展示 今天我要带大家看一组令人惊艳的AI骨骼检测作品集。基于Google MediaPipe Pose模型,这套系统能在毫秒级时间内精准定位人体33个关键点࿰…...
