如何在C#中用Selenium启动Opera GX?版本适配报错求助
解决Selenium启动Opera GX的版本不匹配异常
问题原因
你遇到的SessionNotCreated异常核心是版本不兼容:Opera GX基于Chromium内核,当前版本为113.0.5672.127,但你使用的ChromeDriver仅支持Chromium 114版本,两者版本号不匹配导致无法创建会话。
解决方案
1. 手动下载匹配版本的ChromeDriver
- 找到与你的Opera GX版本(113.0.5672.127)完全匹配的ChromeDriver版本(需对应Chromium内核的113.0.5672.x系列)。
- 将下载的ChromeDriver文件放到项目目录,或者添加到系统环境变量
PATH中。
2. 修改代码指定驱动路径
更新你的C#代码,指定正确的ChromeDriver路径:
var options = new ChromeOptions(); options.AddArgument("remote-debugging-port=9222"); options.BinaryLocation = @"C:\Users\Pc\AppData\Local\Programs\Opera GX\opera.exe"; // 替换为你的ChromeDriver 113版本的实际路径 IWebDriver driver = new ChromeDriver(@"C:\path\to\chromedriver_113.exe", options); driver.Navigate().GoToUrl("https://www.google.com");
3. 用WebDriverManager自动管理驱动(推荐)
通过NuGet安装WebDriverManager.Net包,它能自动下载并匹配对应版本的驱动,无需手动操作:
using WebDriverManager; using WebDriverManager.DriverConfigs.Impl; // 自动下载适配Opera GX 113版本的ChromeDriver new DriverManager().SetUpDriver(new ChromeConfig(), "113.0.5672.127"); var options = new ChromeOptions(); options.AddArgument("remote-debugging-port=9222"); options.BinaryLocation = @"C:\Users\Pc\AppData\Local\Programs\Opera GX\opera.exe"; IWebDriver driver = new ChromeDriver(options); driver.Navigate().GoToUrl("https://www.google.com");
内容的提问来源于stack exchange,提问作者user20833199
相关产品推荐
相关产品推荐

