如何在Selenium WebDriver中向下滚动页面到底部(结束页面)



我需要向下滚动页面直到Selenium WebDriver结束。我尝试使用以下代码片段向下滚动页面:

JavascriptExecutor jse6 = (JavascriptExecutor) driver;
jse6.executeScript("window.scrollBy(0,250)", "");

它正在滚动,但我需要向下滚动到结束页面。

我们必须使用 JavascriptExecutor

使用坐标滚动

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

滚动到页面末尾

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

滚动到任何元素

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

python

import time
time.sleep(2)
drive.execute_script("window.scrollTo(0, document.body.scrollHeight)")

基于@shubham班萨尔的

为此,

您可以手动获取页面末尾任何对象的 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);

最新更新