我有下一个HTML:
<ul class="pages">
<li class="page-1 active"><a data-page="1" href="/sold?page=1">1</a></li>
<li class="page-2"><a data-page="2" href="/sold?page=2">2</a></li>
<li class="page-3"><a data-page="3" href="/sold?page=3">3</a></li>
<li>...</li>
<li class="page-975"><a data-page="975" href="/sold?page=975">975</a></li>
</ul>
我试图在Xpath的帮助下得到最后一段文字,其中包含最后一页的编号(在我的例子中是975)。
我尝试过类似的事情:
$page_count = $xpath->query(".//ul[@class='pages']/li/a[last()]/text()")->item(0)->textContent;
但它没有用。
获取最后一段文字的正确查询是什么?
答案 0 :(得分:1)
试试这个:
$page_count = $xpath->query(".//ul[@class='pages']/li[last()]/a/text()")->item(0)->nodeValue;
首先:您需要抓取最后一个li
,然后抓住其a
- 元素的文本
您的版本基本上会搜索所有li
- 元素,并在其中搜索最后a
- 元素(它们只有一个),然后搜索其文本属性。所以你基本上得到了所有文本的清单。
第二:尝试nodeValue
而不是textContent