Python使用Selenium加载Chrome用户配置文件时报错如何解决
Selenium调用Chrome报错修复方案
报错分类处理
你遇到的报错分为两类,分别按以下方案修复即可:
1. 修复DeprecationWarning弃用警告
该警告是因为Selenium v4.0+版本已弃用chrome_options参数、直接传入executable_path的写法,需做以下调整:
- 将参数
chrome_options=options替换为options=options - 所有Windows本地路径前加
r前缀标记为原始字符串,避免反斜杠被识别为转义字符 user-data-dir参数只需配置到User Data目录,不需要追加Default,Chrome启动时会自动加载默认配置目录
2. 修复USB设备报错
USB相关报错是Chrome尝试扫描系统USB设备失败导致的非致命错误,不会影响浏览器正常运行,要消除日志可以给ChromeOptions添加以下参数:
- 添加
--disable-usb-discovery禁用USB设备扫描 - 添加
--log-level=3仅输出严重级别日志,过滤无关警告
修复后的完整代码
from selenium import webdriver from selenium.webdriver.chrome.service import Service options = webdriver.ChromeOptions() # 加载本地Chrome配置 options.add_argument(r"user-data-dir=C:\Users\Administrator\AppData\Local\Google\Chrome\User Data") # 禁用USB扫描消除报错 options.add_argument("--disable-usb-discovery") # 过滤非必要日志 options.add_argument("--log-level=3") # 适配Selenium v4+的chromedriver路径写法 service = Service(executable_path=r"D:\ggauto\chromedriver.exe") driver = webdriver.Chrome(service=service, options=options)
额外注意事项
- 运行代码前请关闭所有已打开的Chrome窗口,否则本地配置会被浏览器锁定,导致加载失败
- 请确保chromedriver版本和本地安装的Chrome浏览器主版本完全匹配,否则会出现兼容性异常
内容的提问来源于stack exchange,提问作者Hạnh Nguyễn
相关产品推荐
相关产品推荐

