<p class="small" style="margin: 16px 4px 8px;">
<b>
<a class="menu-root" href="#pg-jump">Pages</a>
:
<b>1</b>
,
<a class="pg" href="viewforum.php?f=941&start=50">2</a>
,
<a class="pg" href="viewforum.php?f=941&start=100">3</a>
...
<a class="pg" href="viewforum.php?f=941&start=8400">169</a>
,
<a class="pg" href="viewforum.php?f=941&start=8450">170</a>
,
<a class="pg" href="viewforum.php?f=941&start=8500">171</a>
<a class="pg" href="viewforum.php?f=941&start=50">Next.</a>
</b>
</p>
我想要捕获包含171.的a
元素。所以基本上是Next的前一个元素。
//a[.='Next.']//Not sure how to use preceding here
答案 0 :(得分:37)
您可以使用此xpath
:
//a[.="Next."]/preceding::a[1]
如果我要绘制图表,使用X
来表示当前位置,它将如下所示:
------------------+------+------------------
preceding-sibling | self | following-sibling
------------------|------|------------------
last() ... 2 1 | X | 1 2 ... last()
------------------+------+------------------
答案 1 :(得分:3)
//a[contains(text(), 'Next.')]/preceding::a[contains(text(), '171')]
xpath的说明:使用text
方法和<a>
标记,然后使用preceding
关键字找到元素171
< / p>
答案 2 :(得分:1)
我知道这是旧的,如果你不知道&#34;名称前面的包含元素。&#34;这个元素对你来说不是一个解决方案。但是,如果你想要找到那个元素并且有几个&#34; 171&#34;整个页面上的元素。 区别于其他的方法,您可以使用以下内容。
//p[b[contains(., 'Next.')]]//a[contains(., '171')]