当页面仍在加载时,JAVA Selenium镀铬驱动程序不会滚动

时间:2016-08-27 18:31:50

标签: java selenium scroll screen-scraping selenium-chromedriver

希望有人可以在这里帮助我,我有一个网站需要一段时间才能加载,为了成功加载页面上的所有图像,我需要在页面仍然加载时继续向下滚动。我不能等待页面先加载然后滚动。

我知道使用以下内容滚动到页面底部,我已经尝试在使用driver.get获取url之前和之后在循环中的单独线程上运行它(" SITE HERE&# 34);尝试让页面滚动到底部,直到它完全加载。

JavascriptExecutor js = ((JavascriptExecutor) driver);
js.executeScript("window.scrollTo(0, document.body.scrollHeight)");

这没有用,我在如何让selenium滚动页面时仍然处于加载过程中,我感到很茫然。

1 个答案:

答案 0 :(得分:0)

webdriver get(String url)命令在其文档中声明它将在页面加载之前阻塞。如果你打电话说你不能尝试滚动。我自己还没试过,但你可以尝试通过JavaScript加载页面,但这不是一个很好的做法,因为如果你试图循环,你最终可能会遇到有关脚本上下文的问题相同的脚本调用,如果在不同的脚本调用(来自Web驱动程序),可能会有时间问题。我的第一个建议是与页面开发人员交谈并使其在页面加载后滚动正常工作