Unexpected error creating WebSocket DevTools session
OpenQA.Selenium.WebDriverException:“Unexpected error creating WebSocket DevTools session.”
WebDriverException: DevTools version is not in the supported range. Desired version=122, range=5. Supported versions: 114, 113, 112, 85
这个错误的核心原因是 Selenium 版本与 Chrome 浏览器版本不兼容,具体来说是 Selenium 内置的 DevTools 协议版本与 Chrome 浏览器的 DevTools 版本不匹配(你的 Chrome 是 122 版本,但 Selenium 只支持 114 及以下版本)。
解决方法:升级 Selenium 到与 Chrome 122 兼容的版本
Selenium 对 Chrome DevTools 版本的支持是随版本更新的,Chrome 122 对应的 Selenium 最低版本为 4.18.1(或更高版本)。你需要将 Selenium 升级到足够新的版本,以支持 Chrome 122 的 DevTools 协议。
具体步骤:
卸载旧版本 Selenium
在 Visual Studio 的「NuGet 包管理器」中,卸载当前项目中的Selenium.WebDriver和Selenium.Chrome.WebDriver包。安装兼容版本
安装 4.18.1 及以上版本 的Selenium.WebDriver和对应版本的Selenium.Chrome.WebDriver:- 推荐安装最新稳定版(如 4.21.0 或更高),确保对 Chrome 122 的完全支持。
- 安装命令(Package Manager Console):
Install-Package Selenium.WebDriver -Version 4.21.0 Install-Package Selenium.Chrome.WebDriver -Version 4.21.0
验证版本匹配
确保:- Chrome 浏览器版本:122.x
- Selenium.WebDriver 版本:≥4.18.1
- ChromeDriver 版本:与 Chrome 122 匹配(122.x)
补充说明:
- DevTools 版本兼容性:Selenium 的 DevTools 支持依赖于浏览器版本,每个 Selenium 版本会包含对特定范围 Chrome 版本的支持。旧版本 Selenium 不认识新版本 Chrome 的 DevTools 协议,因此会报“版本不在支持范围内”的错误。
- 升级的必要性:低版本 Selenium(如 4.14 及以下)不支持 Chrome 120+ 的 DevTools 协议,必须升级到 4.18.1 及以上版本才能解决此问题。
升级完成后,重新运行代码,WebSocket DevTools 会话创建失败的问题会被解决,Selenium 可以正常与 Chrome 122 的 DevTools 交互,从而拦截 XHR 请求。