簡體   English   中英

如何使用Java + Selenium WebDriver移動到動態頁面的底部

[英]How to move to bottom of the dynamic page using Java + Selenium WebDriver

我試圖獲取頁面中完全動態的行數。 我有以下代碼來這樣做。 但它在某種程度上滾動並僅獲取元素的部分計數。 無法在頁面底部找到任何元素,因為它是動態元素。 我該如何解決這個問題?

List<WebElement> elements = driver.findElements(By.xpath(NoOfAssets));
Actions a = new Actions(driver);
a.moveToElement(elements.get(elements.size() - 1)).clickAndHold().moveByOffset(0, 1000000000).release().perform();
int noOfAssets = elements.size();
System.out.println(noOfAssets);

它只返回40行。 但實際上有更多的行。 我想將光標拖動到頁面底部,當行加載然后獲取大小。

你需要scroll down到頁面的末尾,然后找到elements但是你可以使用sendKeys方法向下滾動頁面。嘗試下面的代碼。讓我知道它是怎么回事。


JavascriptExecutor js = (JavascriptExecutor)driver;

        while(true){

            Long height=(Long) js.executeScript("return document.body.scrollHeight");
            System.out.println(height);
            Thread.sleep(1000);
            driver.findElement(By.tagName("body")).sendKeys(Keys.END);        

            if (height==0)
            {
                break;
            }               

        } 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM