Можно ли динамически создать ссылку и щелкнуть по ней с помощью Selenium?

0

Скажем, есть веб-сайт, который динамически загружает данные с помощью вызовов Ajax. Данные занимают 200 страниц с примерно 50 строками на странице. Пагинация создается внизу, что похоже на

<div class="pagination">
    <a class="paginate" id="previous">Previous</a>
    <span>
        <a class="paginate" id="p1">1</a>
        <a class="paginate" id="p2">2</a>
        <a class="paginate" id="p3">3</a>
        <span class="ellipsis">…</span>
        <a class="paginate" id="p200">200</a>
    </span>
    <a class="paginate" id="next">Next</a>
</div>

Используя Selenium с Java, можно ли динамически генерировать ссылку, например

<a class="paginate" id="p100">100</a>

и щелкните по нему, чтобы сразу перейти на страницу 100?

Теги:
selenium hyperlink dynamic
CodeFix

1 ответ

0

Посмотрите, работает ли это: -

        Random rand = new Random();
        int lowerBound = 1;
        int upperBound = 11;
        
        int pageNum = rand.nextInt((upperBound - lowerBound)+1)+lowerBound;
        System.out.println("Page num generated "+pageNum);
        
        String xpathStr = ".//a[@id='p"+pageNum+"']";
        System.out.println(xpathStr);
        driver.findElement(By.xpath(xpathStr)).click();

Выход:

Page num generated 8
.//a[@id='p8']
Поделиться
Источник

Другие вопросы

  • Excel VBA - селен не распознает элемент1 ответ

    Я пытаюсь написать сценарий, который будет перемещаться по этой веб-странице https://www.theclearinghouse.org/uid-lookup Как вы можете видеть на изображении, идентификатор элемента - SubmitUid. [IMG_OUR_ID=3.png] Но когда я использую d.FindElementById ("SubmitUid"). Щелкните d - это мой хр...

  • Selenium + Python Data Scraping не работает. название продукта Shopee не сохраняется в файле csv1 ответ

    Мой код:from selenium import webdriver from time import sleep import csv from selenium.webdriver.common.keys import Keys from selenium.webdriver.common.by import By from selenium.webdriver.support.ui import WebDriverWait from selenium import webdriver PATH = "C:\Program Files (x86)\chromedriver...

  • Попытка заставить цикл работать через альтернативные массивы2 ответ

    Я пытаюсь распечатать строку, меняя регистры букв. я хочуYourString выйти какYoUrStRiNg . Я пробовал три вещи, но не могу заставить цикл работать так, как мне нужно. Вот что у меня есть на данный момент: //one attempt String s = "yourString"; String x = ""; for (int i = 0; i <...

  • Проблема с получением карты с интервалом даты в качестве ключа1 ответ

    У меня есть список баллонов. У баллона есть поля dateCreation и color. И у меня есть две даты, называемые dateStart и dateEnd, которые выбрал пользователь. Мне нужно иметь карту, где все ключи - это дата между dateStart и dateEnf, и где значение зависит от даты баллона. Например : если дата пользова...

  • ctx_ddl.sync_index работает из кода Java1 ответ

    Меня попросили проверить, есть ли способ выполнить хранимую процедуру ctx_ddl.sync_index из кода Java. Я попытался выполнить это как обычную хранимую процедуру {ctx_ddl.sync_index {?,?}}, я использую spring jdbc.connection = jdbcTemplate.getDataSource().getConnection(); CallableStatement callableSta...

  • Какой самый простой способ кодирования Touch для Android с помощью onTouchListener?2 ответ

    Я собирал данные в Интернете, и из того, что я собрал, мне интересно, могу ли я просто создать класс, реализующий onTouchListener, и установить его для моего экземпляра View. Я предполагаю, что мне нужно использовать «инструменты», а не «расширяет», потому что, согласно API Android, onTouchListender...

  • Импорт nu.xom. *;1 ответ

    [IMG_OUR_ID=8801.png] Здравствуйте, я пытаюсь импортировать nu.xom. *; Может ли кто-нибудь сказать мне, почему этот импорт не работает. Мой SDK - Java 11. Нужно ли мне добавлять библиотеку проекта? [IMG_OUR_ID=8802.png]

  • Передача значения параметра от кнопки Datatables к функции1 ответ

    Я пытаюсь передать значение кнопки в таблице данных функции. Однако я просто получаю значение первой строки. Надеюсь, ты сможешь мне помочь. Мне просто нужно предупредить параметр, а обо всем остальном я позабочусь. вот код memberlist.php<?php header('Content-Type: application/json; Charset="...

  • Снимок WebRTC с веб-камеры и сохранение его на сервере в PHP: iPhone Safari вылетает при разрешении выше 20961 ответ

    У меня есть РАБОЧИЙ код, чтобы сделать снимок с веб-камеры и сохранить его на PHP через ajax ... но когда я пытаюсь использовать разрешение выше 2000, сафари-мобильный на iPhone вылетает, почему и как это исправить? здесь, если я сделаюgetUserMedia({ video:{width: { ideal: 2096 => все в порядке Н...

  • selenium <элемент не прикреплен к документу страницы "в selenium> Java1 ответ

    Я пытаюсь мгновенно получить данные из активного элемента с помощью Xpath, но когда я запускаю проект, я получил эту ошибку Исключение в потоке "main" org.openqa.selenium.StaleElementReferenceException: ссылка на устаревший элемент: элемент не прикреплен к документу страницы package rea...

CodeFix
Цитата дня

"Завидую тестировщикам: все хотят с ними дружить."

Эндрю Таненбаум