нажмите на элементы списка, используя java-скрипт в веб-драйвере selenium - PullRequest
0 голосов
/ 16 мая 2018

У меня есть требование собрать несколько ссылок и нажать на каждую ссылку, чтобы извлечь некоторую информацию с веб-сайта в excel. Поэтому я собрал все ссылки в одном списке и пытаюсь нажать на каждый элемент в зависимости от индекса.Я не получаю никаких исключений, и щелчок также не выполняется для элемента. Я нажал на ссылку, используя executor javascript. Обычный щелчок и действия здесь не работают.

List<WebElement> titles=driver.findElements(By.xpath("//*[@class='product-name']"));
for(int i=0;i<titles.size();i++)
    {
    String title1=titles.get(i).getText();
    System.out.println(title1);
    Thread.sleep(5000);
        if(titles.get(i).isEnabled())
        {
        System.out.println("TAKE ACTION");
        js.executeScript("arguments[0].click();", titles.get(i));
        }
    }

1 Ответ

0 голосов
/ 16 мая 2018

В соответствии с вашим HTML вы можете собрать все URL href вместо нажатия в заголовке.

Пример кода:

List<WebElement> elements = driver.findElements(By.xpath(".//h2[@class='product-name']//a"));
for (WebElement element : elements) {
    driver.navigate().to(element.getAttribute("href"));
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...