我正在尝试编写一个XPATH表达式,在此页面上找到下一页网址 OR 元素,以导航到下一页。
看起来如下所示,其中1,2,3,...,n和“更多”导航到页面
第1页| 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |更
页面来源如下:
<table><tr><td><br />
<p>Page <a href='browse.html?&id=0&count=0'>1</a> | <a href='browse.html?&id=0&count=20'>2</a> | <a href='browse.html?&id=0&count=40'>3</a> | <a href='browse.html?&id=0&count=60'><strong>4</strong></a> | <a href='browse.html?&id=0&count=80'>5</a> | <a href='browse.html?&id=0&count=100'>6</a> | <a href='browse.html?&id=0&count=120'>7</a> | <a href='browse.html?&id=0&count=140'>8</a> | <a href='browse.html?&id=0&count=160'>9</a> | <a href='browse.html?&id=0&count=180'>10</a> | <a href='browse.html?&id=0&count=200'>More</a> </p>
</td></tr></table>
我尝试过写一些但无济于事:
//表/ tbody的/ TR / TD /表/ tbody的/ TR / TD / P
// TD / P
非常感谢任何建议,谢谢
答案 0 :(得分:1)
首先,分页甚至访问任何级别的网站,完全取决于每个网站。因此,没有一种通用方法可以使用任何工具对任何网站进行分页。
现在,谈到这个特定情况,看起来网站分页只取决于count
url变量,所以你只需一个计数器就可以很容易地模仿分页,不需要使用xpath或获取任何部分的HTML:
browse.html?&id=0&count=0
,count=(0*1) + 20
browse.html?&id=0&count=20
,count=(1*1) + 20
browse.html?&id=0&count=40
,count=(2*1) + 20
如果您需要xpath,则应返回所有链接:
//a/@href
如果你想要一个索引用xpath迭代,也可以用:
完成//a[1]/@href
//a[2]/@href