Как перейти к нижней части динамической страницы с помощью Java + Selenium WebDriver - PullRequest
0 голосов
/ 03 июня 2019

Я пытаюсь получить количество строк на странице, которая является полностью динамической.У меня есть код ниже, чтобы сделать это.Но это в определенной степени прокрутка и выборка только частичного количества элементов.Невозможно найти какой-либо элемент внизу страницы, так как он является динамическим.Как я могу решить эту проблему?

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 строк.Но на самом деле строк больше.Я хочу перетащить курсор до конца страницы, когда строки будут загружены, а затем получить размер.

1 Ответ

0 голосов
/ 03 июня 2019

Вам нужно 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;
            }               

        } 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...