繁体   English   中英

加载 Chrome 扩展程序时如何以无头模式启动 ChromeDriver

[英]How to start ChromeDriver in headless mode when loading a Chrome Extension

这是我的 C# 代码。 当我运行它时,它以无头模式启动,但它似乎与 Chrome 扩展有关。

 [Test]
        public async Task Start()
        {
            var chromeDriverService = ChromeDriverService.CreateDefaultService();
            var option = new ChromeOptions();


            option.AddExtension(MainPageElements.extensionPath);
            option.AddArguments("headless");
            using (var browser = new ChromeDriver(option))
            {
                WebDriver webDriver = new ChromeDriver(chromeDriverService, option);
                webDriver.Manage().Window.Maximize();
                //more code
            }
         }  

这是我运行时遇到的错误:

OpenQA.Selenium.WebDriverException:未知错误:无法等待扩展背景页面加载:chrome-extension://nkbihfbeogaeaoehlefnkodbefgpgknn/background.html 来自未知错误:找不到页面:chrome-extension://nkbihfbeogaeaoehlefnkodbefgpgknn/background。 html

扩展名是 MetaMask。 这是一个加密钱包。

加载此 Chrome 扩展程序时可能根本无法使用无头模式,因为它会打开自己的新弹出窗口 window ...

编辑:ChromeDriver 版本 - 108.0.5359.7100

你必须把

option.AddArguments("--headless=new")

就在命令option.AddExtension(MainPageElements.extensionPath);

来源https://bugs.chromium.org/p/chromium/issues/detail?id=706008#c36

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM