C# Selenium中--whitelisted-extension-id致Chrome无转储崩溃
解决Chrome启动时添加--whitelisted-extension-id参数崩溃的问题
确认扩展ID的真实性
你代码中手动设置的extensionId = "123"无效。通过--load-extension加载的未打包扩展,Chrome会自动生成唯一临时ID,而非自定义字符串。获取正确ID步骤:- 移除
--whitelisted-extension-id参数,启动Chrome加载目标扩展 - 打开
chrome://extensions/,开启开发者模式,复制该扩展的真实ID替换代码中的"123"
- 移除
修正参数格式与顺序
检查参数拼接格式,避免转义或空格问题,可改为:chromeOptions.AddArgument($"--whitelisted-extension-id={extensionId}");同时尝试调整参数添加顺序,将
--whitelisted-extension-id放在--load-extension之前。替代白名单参数方案
Chrome 112版本对--whitelisted-extension-id可能存在兼容性问题,可改用--disable-extensions-except参数限制加载的扩展:chromeOptions.AddArgument(@"--disable-extensions-except=path/to/extension");该参数会只允许指定路径的扩展加载,无需额外设置ID白名单。
开启详细日志排查崩溃原因
启用ChromeDriver的详细日志,替代崩溃转储获取错误信息:ChromeDriverService service = ChromeDriverService.CreateDefaultService(); service.LogPath = @"C:\chrome-logs\driver.log"; service.EnableVerboseLogging = true; tempDriver = new ChromeDriver(service, chromeOptions);启动后查看日志文件,定位崩溃的具体触发点。
内容的提问来源于stack exchange,提问作者John
相关产品推荐
相关产品推荐

