繁体   English   中英

如何在无头ChromeDriver中获取屏幕截图?

[英]How can I get a screenshot in headless ChromeDriver?

我试图在无头的ChromeDriver实例中捕获屏幕截图。 我可以在没有无头的情况下获得正确的截图。

我试图仅为此举例说明,但是,该示例无法正常工作。

    public static void main(String[] args) throws Exception{
            ChromeOptions chromeOptions = new ChromeOptions();
            chromeOptions.setBinary("/Applications/Google Chrome.app/Contents/MacOS/Google Chrome");
            chromeOptions.addArguments("--headless");

            WebDriver driver = new ChromeDriver(chromeOptions);
            driver.navigate().to("https://adobe.com");

            File srcFile = ((TakesScreenshot)driver).getScreenshotAs(OutputType.FILE);
            // Now you can do whatever you need to do with it, for example copy somewhere
            FileUtils.copyFile(srcFile, new File("testscreenshot.png"));
            driver.quit();

    }

上面代码生成的屏幕截图将为空白,侧面有一个滚动条。 如何在无头模式下捕获屏幕截图? 这可能吗?

这种行为在Windows,Ubuntu和Mac上有所不同。 我目前正在使用Mac。 由于某种原因,它没有呈现页面。 这是我拍摄截图之前所需要的全部内容

new WebDriverWait(driver, 10)

暂无
暂无

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

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