Chrome与ChromeDriver版本匹配及二进制文件路径问题求助
解决ChromeDriver与Chrome版本不兼容及二进制文件找不到问题
问题分析
你遇到两个核心问题:
- PATH路径中存在旧版本ChromeDriver(116.0.5845.187),系统优先调用该版本,与当前安装的Chrome 117.0.5938.62不兼容
- 代码中错误使用
options.executable_path指定Chrome浏览器路径,导致Selenium无法找到Chrome二进制文件
分步解决
1. 清理旧版本ChromeDriver
系统默认从PATH中查找ChromeDriver,旧版本会干扰正常调用,执行以下命令删除旧驱动:
sudo rm /usr/bin/chromedriver
之后将你安装的117版本ChromeDriver路径添加到PATH,或者在代码中直接指定其路径。
2. 修正代码中的路径配置错误
options.executable_path是用来指定ChromeDriver的路径,而Chrome浏览器的二进制文件路径需要用options.binary_location。同时若新ChromeDriver不在PATH中,初始化时需明确指定其路径。
修正后的代码:
import time from selenium import webdriver options = webdriver.ChromeOptions() # 指定Chrome浏览器二进制文件的正确路径 options.binary_location = '/home/len/jss/Configuration/chrome-linux64/chrome' # 初始化WebDriver时指定117版本ChromeDriver的路径(替换为你实际的路径) driver = webdriver.Chrome( options=options, executable_path='/path/to/your/chromedriver_117' ) driver.get('http://www.google.com/') time.sleep(5) # Selenium 4+推荐使用新的元素定位语法,替代旧的find_element_by_name search_box = driver.find_element('name', 'q') search_box.send_keys('ChromeDriver') search_box.submit() time.sleep(5) driver.quit()
3. 额外验证步骤
- 确保ChromeDriver具备可执行权限:
chmod +x /path/to/your/chromedriver_117
- 验证版本匹配:
# 查看Chrome版本 google-chrome --version # 查看ChromeDriver版本 /path/to/your/chromedriver_117 --version
两个版本号需完全一致(117.0.5938.62)。
内容的提问来源于stack exchange,提问作者Dawood Thouseef
相关产品推荐
相关产品推荐

