Windows/linux系统下Chrome浏览器与ChromeDriver的安装及Selenium环境配置指南
目录
在进行Web自动化测试或数据爬取时,Selenium是一个强大的工具。而要使用Selenium操控Chrome浏览器,关键在于正确安装Chrome浏览器并配置与之版本匹配的ChromeDriver。本文将一步步指导你在Windows/linux系统上完成整个环境的搭建,并解决Chrome自动更新所带来的驱动版本问题。
一、Windows系统下安装
第一部分:安装Chrome浏览器
- 访问 Google Chrome 官方网站:https://www.google.cn/chrome/fallback/

- 点击“下载Chrome”按钮。
- 运行下载的安装程序,并按照提示完成安装。
注意:Chrome浏览器默认会自动更新。这意味着你的浏览器版本可能会在后台静默升级,导致已安装的ChromeDriver因版本不匹配而失效,从而使你运行的代码报错,这是配置过程中最常见的问题,需要重新下载与之匹配的chormedriver。
第二部分:下载与配置ChromeDriver
这是最关键的一步,核心在于版本匹配。
步骤1:查看Chrome浏览器版本
-
打开Chrome浏览器。
-
点击浏览器右上角的三个点 “帮助” -> “关于Google Chrome”。

-
在弹出的页面中,你将看到具体的版本号,例如
141.0.7390.78。请牢记主版本号141。
步骤2:下载对应版本的ChromeDriver
推荐方法:使用 “Chrome for Testing” 镜像
这个官方提供的镜像站点包含了所有历史版本的ChromeDriver,确保你能找到与当前浏览器完全匹配的驱动。
-
访问 Chrome for Testing availability 站点:
https://googlechromelabs.github.io/chrome-for-testing/ -
在页面中的 “Known Good Versions” 列表里,根据你刚才查到的主版本号(如141),找到对应的版本行。
-
在该版本行中,找到
windows32或windows64的下载链接,点击下载ZIP压缩包
步骤3:放置ChromeDriver文件
下载ZIP包后,将其解压,你会得到名为 chromedriver.exe 的文件。接下来,你需要将它放在一个合适的位置。
有以下两种常见的放置方案,任选其一即可:
-
方案A:放入Python安装目录(推荐给纯Python用户)
将chromedriver.exe文件复制到你的Python解释器根目录(即python.exe所在的文件夹)。这样做的好处是,这个目录通常已经在系统的Path环境变量中。 -
方案B:放入Anaconda的Scripts目录(推荐给Anaconda用户)
如果你使用Anaconda管理Python环境,请将chromedriver.exe文件复制到Anaconda安装目录下的Scripts文件夹中(例如D:\anaconda3\Scripts\)。这个目录同样在Anaconda环境的Path中。
步骤4:配置环境变量(可省略)
如果你选择了上述方案A或B,并且之前已经正确配置了Python或Anaconda的环境变量,那么通常可以跳过这一步,因为系统已经能够找到 chromedriver.exe。
如果遇到“找不到chromedriver”的错误,可以手动将其所在路径添加到系统Path中:
-
在Windows搜索栏输入“环境变量”,选择“编辑系统环境变量”。
-
点击下方的 “环境变量” 按钮。
-
在“系统变量”区域,找到并选中
Path变量,点击 “编辑”。
-
点击 “新建”,然后将你放置
chromedriver.exe的完整路径(例如D:\anaconda3\Scripts\)添加进去。
-
点击 “确定” 保存所有更改。
重要提示:完成此步骤后,务必重新启动你的命令行终端(CMD、PowerShell)或IDE(如PyCharm、VSCode),以使新的环境变量生效。
第三部分:验证测试
步骤1:下载Selenium
通过 pip 安装:
#直接pip install 因为是国外的资源直接下载超时报错,所以用了中科大的镜像(推荐)
pip install -i https://pypi.mirrors.ustc.edu.cn/simple/ selenium
步骤2:写一个简单的Python脚本进行测试。
-
创建一个新的Python文件,例如
test_chrome.py。 -
输入以下代码:
from selenium import webdriver
from selenium.webdriver.chrome.service import Service
# 如果你的chromedriver在PATH中,可以直接这样初始化
driver = webdriver.Chrome()
# 打开百度首页
driver.get('https://www.baidu.com/')
# 打印页面标题,验证是否成功打开
print(f"页面标题: {driver.title}")
# 等待几秒,让你看到效果
input("按回车键关闭浏览器...")
# 关闭浏览器
driver.quit()
print("测试成功!浏览器已关闭。")
步骤3:运行python代码
在终端或pycharm中运行这个脚本。
成功标志:
-
一个Chrome浏览器窗口会自动弹出并访问百度首页。
-
控制台会打印出页面标题“百度一下,你就知道”。
-
在按回车键后,浏览器自动关闭,并提示“测试成功!”。
常见问题与总结
-
问题:出现
SessionNotCreatedException错误,提示“This version of ChromeDriver only supports Chrome version XX”-
原因:这是最经典的版本不匹配错误。你的Chrome浏览器已经自动更新,但ChromeDriver还是旧版本。
-
解决方案:按照本文第二部分的步骤,重新查看浏览器版本,并下载对应的ChromeDriver进行替换。
-
-
问题:出现
WebDriverException错误,提示“‘chromedriver’ executable needs to be in PATH”-
原因:系统找不到
chromedriver.exe文件。 -
解决方案:检查文件是否已正确放置在指定目录,并且该目录已在系统Path环境变量中。完成后重启终端。
-
总结:
配置Selenium Chrome环境的核心就两点:版本匹配和路径正确。只要牢记这两点,并熟悉在 https://googlechromelabs.github.io/chrome-for-testing/ 上寻找对应驱动的方法,你就能轻松解决大部分环境配置问题。
二、Linux服务器环境下安装
第一部分:手动下载RPM包安装(推荐)
liunx服务器环境(CentOS/Alibaba Cloud Linux)
- 查找并下载RPM包:
访问 Chrome官方下载页面 或可信的第三方镜像站,找到最新稳定版的Chrome RPM包(例如 google-chrome-stable_current_x86_64.rpm),然后通过FTP、SCP等工具上传到您的服务器。
或者,直接使用wget尝试下载(如果网络可达):
wget https://dl.google.com/linux/direct/google-chrome-stable_current_x86_64.rpm
-
使用Yum本地安装:
手动安装RPM包,Yum会自动处理依赖关系:
sudo yum localinstall ./google-chrome-stable_current_x86_64.rpm
- 查看浏览器版本:
在终端输入以下命令,再次确认Chrome版本
google-chrome --version

第二部分:下载并安装chromdriver
- 下载chromdriver
用chrom浏览器的下载浏览器驱动,先查看浏览器的版本号
如上图Chrome版本是141,属于较新的版本。
最新版本的驱动在这个地址
Chrome for Testing availability,根据自己的版本(如上面版本141,后面的数字忽略)需求下载

- 解压并放置驱动
使用以下命令解压下载的压缩包(请根据实际文件名调整):
unzip chromedriver-linux64.zip
解压后,你会得到一个名为 chromedriver 的可执行文件。将其移动到系统路径并设置权限:
sudo mv chromedriver /usr/local/bin/
sudo chmod +x /usr/local/bin/chromedriver
这步操作使得你可以在终端任何位置直接运行chromedriver命令。
- 验证安装
在终端输入:
chromedriver --version

如果正确输出了版本号,说明驱动已经安装成功。
第三部分:使用Selenium进行测试
驱动安装好后,就可以使用Selenium来控制和操作Chrome浏览器。
- 安装Selenium
可以通过pip安装Selenium库:
pip install selenium
如果需要安装特定版本,可以指定,例如:
pip install selenium==3.141.0
-
编写测试脚本
创建一个Python测试文件(例如
test_chrome.py),使用以下代码来测试Chrome与驱动是否协同工作正常。特别注意:Linux无图形界面的服务器环境,通常需要添加无头模式(--headless)等选项。
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
# 配置Chrome选项(无图形化环境必须有)
chrome_options = Options()
chrome_options.add_argument('--headless') # 无头模式,不显示图形界面
chrome_options.add_argument('--no-sandbox') # 绕过OS安全模型,在root权限下有时需要
chrome_options.add_argument('--disable-dev-shm-usage') # 限制/dev/shm使用,避免内存不足
# 初始化Chrome驱动
driver = webdriver.Chrome(options=chrome_options)
try:
# 打开网页
driver.get("https://www.baidu.com")
# 打印页面标题
print("页面标题:", driver.title)
# 可以进行截图验证
driver.get_screenshot_as_file('/tmp/test_screenshot.png')
print("截图已保存至 /tmp/test_screenshot.png")
finally:
# 关闭浏览器
driver.quit()
这个脚本会在后台运行Chrome,访问百度首页并打印出页面标题,同时保存一张截图以供验证。
- 运行测试脚本
在终端执行:
python test_chrome.py
如果一切正常,你将看到输出的页面标题,并且截图保存成功。
![]()
常见问题与总结
通过本文的步骤,你应该已经成功在Linux服务器上配置了完整的Chrome自动化测试环境。关键要点总结:
-
版本匹配:始终确保Chrome浏览器与ChromeDriver版本一致
-
无头模式配置:服务器环境必须使用
--headless等参数 -
权限和路径:确保ChromeDriver在系统PATH中且有执行权限
-
资源管理:及时关闭浏览器驱动,避免资源泄露
三、阻止chrom浏览器自动更新(windows系统)
禁用Google更新服务
这是最推荐首先尝试的方法,能从根本上阻止更新的触发。
按 Win + R 键,输入 services.msc 并回车。
在服务列表中找到 Google 更新服务 (gupdate) 和 Google 更新服务 (gupdatem) 。

分别双击它们,将"启动类型"设置为"禁用",如果服务正在运行,点击"停止"按钮。

查看效果

更多推荐


所有评论(0)