一尘不染

Selenium WebDriver可以运行,但是速度慢(Java)

selenium

我正在使用Selenium
WebDriver拍摄网页的屏幕截图。运行良好。但是,从我点击eclipse运行到屏幕快照在本地驱动器中显示的时间为7-10秒。大多数延迟似乎是在启动Firefox。

码:

WebDriver driver = new FirefoxDriver();
driver.get("http://www.cnn.com");
File scrFile = ((TakesScreenshot)driver).getScreenshotAs(OutputType.FILE);
FileUtils.copyFile(scrFile, new File("c:\\test\\screenshot.png"));

如何加快此过程?有没有一种方法可以使用已经打开的Firefox浏览器来节省打开新浏览器的时间?这段代码是否繁重?

详细信息:尝试使用eclipse在CentOS和Win7上使用。myspeedtest.net显示下降22 Mbps和上升1 Mbps。


阅读 1368

收藏
2020-06-26

共1个答案

一尘不染

您所要求的(允许WebDriver附加到正在运行的浏览器上)已经将近3年了。迄今为止,此功能尚未添加。据我所知,还没有办法使Firefox加载更快。您可以尝试其他一些技巧。

fp.setPreference("webdriver.load.strategy", "unstable")

引用此页面上的警告:

有beta功能可以使Firefox在调用.get或.click之后不等待整个页面加载。这可能会导致立即查找中断,因此请确保也使用隐式或显式等待。仅适用于Firefox,不适用于其他浏览器。

2020-06-26