簡體   English   中英

無頭鉻與硒一起運行

[英]Headless Chrome run with selenium

        System.setProperty("webdriver.chrome.driver", "/usr/bin/google-chrome");

        final ChromeOptions chromeOptions = new ChromeOptions();
        //chromeOptions.addArguments("headless");
        chromeOptions.addArguments("window-size=1200x600");

        final DesiredCapabilities desiredCapabilities = new DesiredCapabilities();
        desiredCapabilities.setCapability(ChromeOptions.CAPABILITY, chromeOptions);


        final URL url = new URL("https://the-internet.herokuapp.com/login");
        final WebDriver driver = new RemoteWebDriver(url, desiredCapabilities);

失敗為:

線程“主要” org.openqa.selenium.WebDriverException中的異常:無法解析遠程響應:

未找到

知道為什么嗎?

后續: 如何使用Selenium連接到無頭的Chromium

您的Chrome瀏覽器,chromedriver和Selenium有哪些版本? 我嘗試了:

  1. Chrome版本62.0.3202.75(正式版本)(64位)
  2. chromedriver 2.33
  3. 硒3.6.0

如下代碼:

    System.setProperty("webdriver.chrome.driver", "/pathTo/chromedriver);

    ChromeOptions chromeOptions = new ChromeOptions();
    chromeOptions.addArguments("--headless");

    ChromeDriver driver = new ChromeDriver(chromeOptions);
    driver.get("https://the-internet.herokuapp.com/login");
    System.out.println(driver.getTitle());

注意:在當前版本的Selenium和ChromeDriver中,替換為:

    chromeOptions.addArguments("--headless");

    chromeOptions.setHeadless(true);

參考: https : //seleniumhq.github.io/selenium/docs/api/java/org/openqa/selenium/chrome/ChromeOptions.html#setHeadless-boolean-還必須設置Window大小,否則它將在移動模式下呈現,並且可能無法在頁面中獲取某些元素。

    chromeOptions.addArguments("--window-size=1200x600");

在帶有硒3.14.0的chromedriver 2.42.591071上測試

輸出:

The Internet

查看有關瀏覽器支持版本的Headless Chrome入門

options.addArguments("headless");
capabilities.setCapability(ChromeOptions.CAPABILITY, options);

這對我有用。 Chromedriver版本:2.37

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM