我有以下树片段:
<div class="pagesection">
<div class="pagelinks floatleft">Pagine: [<strong>1</strong>]
<a class="navPages" href="http://foo.com/2">2</a>
<a class="navPages" href="http://foo.com/3">3</a>
</div>
</div>
这是我需要废弃的网站部分的导航窗格。所以,我需要在强元素(当前页面)之后访问第一个A链接(下一页)。
我不能使用//DIV[@class="pagelinks"]/A[1]
,因为当我是前任时。在第2页上,窗格的第一个链接是第1页。这会导致我的刮刀循环(它需要一个由表达式产生的“下一页”链接)。为了确保向前导航,我必须在当前页面之后访问A链接。
甚至最糟糕的是,刮刀不允许使用前/后轴,但似乎支持前兄弟和后兄弟。
我将使用哪个xpath表达式来访问A链接?
答案 0 :(得分:1)
您可以获得第一个following-sibling::a
:
//div[contains(@class, "pagelinks")]/strong/following-sibling::a[1]/text()
演示(使用xmllint
工具):
$ xmllint index.html --xpath '//div[contains(@class, "pagelinks")]/strong/following-sibling::a[1]/text()'
2