Chrome 117版本下Selenium ChromeDriver无法正常工作求助
解决Chrome 117与Selenium ChromeDriver版本不匹配问题
问题核心
Chrome升级至117版本后,当前调用的ChromeDriver仅支持114版本,导致会话创建失败;且手动删除驱动文件后,程序仍存在旧版本驱动的残留调用。
解决方案
1. 利用Selenium自动驱动管理特性
Selenium 4.6+版本自带ChromeDriver自动匹配管理功能,无需手动下载配置。你当前使用的4.13.0版本完全支持该特性,问题大概率是旧驱动缓存未清理。
2. 彻底清理旧ChromeDriver残留
- 检查系统
PATH环境变量,删除指向旧版ChromeDriver的路径及对应文件 - 清理Selenium缓存目录:
- Mac/Linux:删除
~/.cache/selenium/chromedriver/下所有114版本的文件夹和文件 - Windows:删除
%USERPROFILE%\.cache\selenium\chromedriver\下所有114版本的文件夹和文件
- Mac/Linux:删除
3. 优化代码确保自动管理生效
修改代码,确保Selenium自动获取匹配Chrome 117的驱动:
from selenium import webdriver from selenium.webdriver.chrome.options import Options from selenium.webdriver.chrome.service import Service chrome_options = Options() chrome_options.page_load_strategy = 'normal' chrome_options.add_argument("--headless") chrome_options.add_argument("--no-sandbox") chrome_options.add_argument("--start-maximized") chrome_options.add_argument("--disable-dev-shm-usage") # 让Selenium自动管理ChromeDriver,无需手动指定路径 service = Service() driver = webdriver.Chrome(service=service, options=chrome_options) driver.implicitly_wait(10)
如果自动管理仍有问题,可临时借助webdriver-manager工具(需先执行pip install webdriver-manager):
from webdriver_manager.chrome import ChromeDriverManager service = Service(ChromeDriverManager().install())
4. 额外排查点
- 检查虚拟环境/conda环境中是否存在旧版ChromeDriver残留,删除对应文件
- 重启终端或IDE,确保环境变量及缓存生效
内容的提问来源于stack exchange,提问作者AbhiKB
相关产品推荐
相关产品推荐

