【问题标题】:Is it possible to dynamically create a link and click on it using Selenium?是否可以使用 Selenium 动态创建链接并单击它?
【发布时间】:2021-08-21 10:56:18
【问题描述】:

假设有一个网站使用 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>

在Java中使用Selenium,是否可以动态生成链接如

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

点击它,直接跳转到第100页?

【问题讨论】:

    标签: java ajax selenium dynamic hyperlink


    【解决方案1】:

    看看这是否有效:-

            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']
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-01-23
      • 2018-07-19
      • 1970-01-01
      • 2018-01-18
      • 2020-12-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多