2017-03-23 143 views
2

我需要向下滾動頁面,直到在硒WebDriver結束,我試圖通過使用JavaScriptExecutor jse6 =(JavascriptExecutor)驅動程序向下滾動頁面; jse6.executeScript(「window.scrollBy(0,250)」,「」);如何向下滾動頁面到底部(最後一頁)在硒webdriver

滾動,但我需要向下滾動,直到尾頁

+1

的可能的複製(http://stackoverflow.com/questions/12293158/page-scroll-up-or-down-in- [頁或向下在硒的webdriver(硒2)用java向上滾動] selenium-webdriver-selenium-2-java-java) – JeffC

回答

4

我們必須使用JavascriptExecutor

要使用滾動協調

((JavascriptExecutor) driver).executeScript("window.scrollBy(0,500)"); 

要滾動,直到頁面

((JavascriptExecutor) driver) 
    .executeScript("window.scrollTo(0, document.body.scrollHeight)"); 
結束

滾動到任何元素

((JavascriptExecutor) driver).executeScript(
      "arguments[0].scrollIntoView();", element); 
+0

請不要回答已經回答的問題。將它們標記或標記爲重複項,以便將它們清理乾淨。 – JeffC

0

爲此,您可以手動獲取頁面末尾的任何對象的xpath。並使用下面的代碼。

WebElement lastElement = 
driver.findElement(By.xpath("//a[@title='org.apache.spark download']")); 
int y = lastElement.getLocation().getY(); 
JavascriptExecutor js = (JavascriptExecutor)driver; 
js.executeScript("window.scrollTo(0,"+y+")"); 
Thread.sleep(3000);