阻止 chromedriver 控制台窗口出现,Selenium C#

Cad*_*lew 3 c# selenium

我正在使用 Selenium 和 C#,无头铬。我是 C# 新手,所以这可能是显而易见的事情,但我查看了其他问题并看到添加:

            var chromeDriverService = ChromeDriverService.CreateDefaultService();
        chromeDriverService.HideCommandPromptWindow = true;
Run Code Online (Sandbox Code Playgroud)

我将其添加到我的 Start() 中,窗口仍然弹出,这是我的启动方法:

            var chromeDriverService = ChromeDriverService.CreateDefaultService();
        chromeDriverService.HideCommandPromptWindow = true;
        var option = new ChromeOptions();
        option.AddArguments("--headless", "--no-sandbox", "--disable-web-security", "--disable-gpu", "--incognito", "--proxy-bypass-list=*", "--proxy-server='direct://'", "--log-level=3", "--hide-scrollbars");
        driver = new ChromeDriver(option);
Run Code Online (Sandbox Code Playgroud)

如果您还有其他需要,请告诉我,先谢谢您!

Jim*_*ans 5

您已经非常接近您想要的解决方案了。您在服务上设置了该属性,但从未在任何地方使用过它。您想要的是以下内容:

var chromeDriverService = ChromeDriverService.CreateDefaultService();
chromeDriverService.HideCommandPromptWindow = true;
var option = new ChromeOptions();
option.AddArguments("--headless", "--no-sandbox", "--disable-web-security", "--disable-gpu", "--incognito", "--proxy-bypass-list=*", "--proxy-server='direct://'", "--log-level=3", "--hide-scrollbars");
driver = new ChromeDriver(chromeDriverService, options);
Run Code Online (Sandbox Code Playgroud)