You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在C#的Selenium ChromeDriver中禁用WEB USB Flag?

问题

在AWS EC2实例运行应用时遇到以下报错,本地运行正常,但服务器端卡在该环节:

[3528:3760:0205/072321.889:ERROR:device_event_log_impl.cc(192)] [07:23:21.489] USB: usb_service_win.cc:105 SetupDiGetDeviceProperty({{A45C254E-DF1C-4EFD-8020-67D146A850E0}, 6}) failed: Element not found. (0x490)

尝试通过以下代码禁用WEB USB Flag:

Dictionary<string, object> prefs = new Dictionary<string, object>
{
    { "webusb_allow_devices", false }
};

browserOptions.AddAdditionalCapability("prefs", prefs);

报错:there is already an option for the prefs capabilty.

随后换了另一种写法:

Dictionary<string, object> prefs = new Dictionary<string, object>
{
    { "webusb_allow_devices", false }
};

browserOptions.AddAdditionalCapability("chromeOptions", prefs);

报错:OpenQA.Selenium.WebDriverException: unknown error: cannot parse capability: goog:chromeOptions

请问如何正确在C#的Selenium ChromeDriver中禁用WEB USB Flag?

解决方案

在C#的Selenium中配置ChromeDriver禁用WEB USB,需遵循正确的ChromeOptions配置方式,以下是两种可靠方法:

方法1:使用ChromeOptions的AddUserProfilePreference方法

直接通过ChromeOptions类提供的方法添加用户配置偏好,避免手动处理capability冲突:

using OpenQA.Selenium.Chrome;

// 初始化ChromeOptions实例
ChromeOptions options = new ChromeOptions();

// 添加禁用WEB USB的用户偏好设置
options.AddUserProfilePreference("webusb_allow_devices", false);

// 初始化ChromeDriver并传入配置
using (IWebDriver driver = new ChromeDriver(options))
{
    // 执行你的业务逻辑代码
}

方法2:添加Chrome启动参数

若偏好设置未生效,可直接添加Chrome启动参数强制禁用WEB USB:

using OpenQA.Selenium.Chrome;

ChromeOptions options = new ChromeOptions();

// 添加--disable-webusb启动参数
options.AddArgument("--disable-webusb");

using (IWebDriver driver = new ChromeDriver(options))
{
    // 执行你的业务逻辑代码
}

原写法错误原因

  • 第一种写法直接添加prefs capability,是由于ChromeOptions内部已维护prefs配置,重复添加导致冲突报错。
  • 第二种写法错误地将prefs直接作为chromeOptions的值,正确结构需将prefs嵌套在chromeOptions字典中;且新版Selenium需使用goog:chromeOptions作为capability名称,不过直接使用ChromeOptions类的方法会自动处理这些细节,无需手动拼接。

内容的提问来源于stack exchange,提问作者Priyank Dave

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.30 20:09:54