【问题标题】:Chrome browser doesn't open in kiosk mode using Selenium WebDriverChrome 浏览器无法使用 Selenium WebDriver 在信息亭模式下打开
【发布时间】:2018-05-30 16:11:16
【问题描述】:

我在 chrome 浏览器中使用 Selenium WebDriver,无论出于何种原因,它都无法在 kiosk 模式下打开。这曾经有效,不知道为什么它停止了。

这是我的代码:

        private IWebDriver GetChromeDriver(BrowserConfigurationOptions browserConfigOptions)
    {
        var options = new ChromeOptions();
        options.AddArguments("disable-infobars");
        options.AddUserProfilePreference("credentials_enable_service", false);
        if (browserConfigOptions.KioskModeForChrome)
            options.AddArgument("--kiosk"); //options.AddArgument("--enable-kiosk-mode");
        LogChromeOptions(options);

        return new ChromeDriver(options);
    }

这是我的环境:

  • 铬 66
  • Selenium WebDriver v 3.11.2
  • Chromedriver 版本 2.38.0.1 来自这个Nuget package

我试过传入 --kiosk 和 --enable-kiosk-mode 没有成功。

【问题讨论】:

    标签: google-chrome selenium selenium-webdriver selenium-chromedriver


    【解决方案1】:

    要在 Kiosk 模式 中初始化 Chrome 浏览器,您需要通过 ChromeOptions 类的实例传递以下参数:

    ChromeOptions options = new ChromeOptions();
    options.addArguments("--kiosk");
    return new ChromeDriver(options);
    

    注意 A :根据 Java Doc,参数被传递为 addArguments()

    注意 B :根据Peter Beverloo

    • --kiosk

      Enables kiosk mode. Please note this is not Chrome OS kiosk mode.
      
    • 示例代码(Java):

      System.setProperty("webdriver.chrome.driver", "C:\\Utility\\BrowserDrivers\\chromedriver.exe");
      ChromeOptions options = new ChromeOptions();
      options.addArguments("--kiosk");
      WebDriver driver = new ChromeDriver(options);
      driver.get("https://www.google.com/");
      
    • 浏览器快照:

    【讨论】:

    • @demouser123 是的,options.addArguments("--kiosk"); 在我这边仍然有效。附上浏览器快照。
    【解决方案2】:

    在看到除了我之外每个人都在工作后,我开始进一步挖掘。挖掘代码后我发现了

    Driver.Manage().Window.Maximize();

    在驱动程序初始化后被调用。删除这行代码后,我可以使用上面的解决方案以 kiosk 模式打开 Chrome。

    【讨论】:

      【解决方案3】:

      Chromedriver 2.38 支持 Chrome 66 的配置问题,而您使用的是 2.18

      请从下方更新。

      http://chromedriver.chromium.org/downloads

      【讨论】:

      • 对不起,我写的是 2.18 而不是 2.38。我的版本是2.38。我希望这个解决方案就这么简单:(
      猜你喜欢
      • 1970-01-01
      • 2019-01-11
      • 2017-01-13
      • 2020-06-26
      • 2021-06-10
      • 1970-01-01
      • 2016-12-28
      • 2012-04-08
      • 1970-01-01
      相关资源
      最近更新 更多