在网页上,页码按钮按以下代码组织:
<div id="sq-pagination">
<span class="displaying-num">Displaying 31-60 of 281</span>
<span>
<a class="pageing_text_arrow" href="http://www.squawka.com/match-results?pg=1"> « First</a>
<a class="pageing_text_arrow" href="http://www.squawka.com/match-results?pg=1"> « Prev</a>
<a class="page-numbers" href="http://www.squawka.com/match-results?pg=1">1</a>
<span class="page-numbers current">2</span>
<a class="page-numbers" href="http://www.squawka.com/match-results?pg=3">3</a>
<a class="page-numbers" href="http://www.squawka.com/match-results?pg=4">4</a>
<a class="page-numbers" href="http://www.squawka.com/match-results?pg=5">5</a>
<a class="page-numbers" href="http://www.squawka.com/match-results?pg=6">6</a>
<a class="page-numbers" href="http://www.squawka.com/match-results?pg=7">7</a>
<a class="page-numbers" href="http://www.squawka.com/match-results?pg=8">8</a>
<a class="page-numbers" href="http://www.squawka.com/match-results?pg=9">9</a>
<a class="page-numbers" href="http://www.squawka.com/match-results?pg=10">10</a>
<a class="pageing_text_arrow" href="http://www.squawka.com/match-results?pg=3"> Next »</a>
<a class="pageing_text_arrow" href="http://www.squawka.com/match-results?pg=10"> Last »</a>
</span>
</div>
我希望Selenium点击“下一页”页面(或第3页,也没关系)。但是,我无法弄清楚如何做到这一点。它似乎没有明显的xpath或elementId。这该怎么做? (代码来自此页面:http://bit.ly/1lwxxeN,这是我试图解决此问题的页面)。我不介意使用javascript代码,如果需要的话。我正在使用RSelenium,但其他解决方案也非常受欢迎(因此我可以尝试找出如何将解决方案转换为RSelenium)。
谢谢,彼得答案 0 :(得分:2)
此xpath选择器应该适合您:
//a[contains(text(),'Next')]
所以,你的代码看起来像这样:
driver.findElement(By.xpath("//a[contains(text(),'Next')]")).click();
答案 1 :(得分:1)
@Richard的好Xpath
,无论如何下一页作为数字,你可以看到,只有当前选中的元素表示为{ {1}}具有特定类名的元素,其他是链接(<span>
),因此您可以查询<a>
并获取下一个链接,例如:
<span>
答案 2 :(得分:1)
查看这些XPATH是否有效:
对于'下一个&gt;&gt;'在最高分页下出现的链接:
//div[@id='upcoming-fixtures']/center/div[@id='sq-pagination']//a[contains(text(),'Next')]
对于'下一个&gt;&gt;'底部分页下的链接:
//div[@id='upcoming-fixtures']/center/center//div[@id='sq-pagination']//a[contains(text(),'Next')]