使用xpath(python)查找最后一个表列表的链接 li:最后一个孩子
131715中的1141–1160 我想知道无论使用response.css还是response.xpath,如何获取xpath以获取最后一个li标记的链接 这是我正在写的代码 对于response.xpath中的href('/*[@id=“js map search result nav”]/ul/li[-1]/a/@href'): yield response.follow(href,self.parse) 或使用xpath(python)查找最后一个表列表的链接 li:最后一个孩子,python,css,xpath,web-crawler,Python,Css,Xpath,Web Crawler,131715中的1141–1160 我想知道无论使用response.css还是response.xpath,如何获取xpath以获取最后一个li标记的链接 这是我正在写的代码 对于response.xpath中的href('/*[@id=“js map search result nav”]/ul/li[-1]/a/@href'): yield response.follow(href,self.parse) 或 (//ul[contains(@class,'c-pagination')]/
(//ul[contains(@class,'c-pagination')]/li)[last()]
获取/ul[contains(@class,'lookup-result-pagination')中的最后一个li元素]
这是css定位器:
ul.c-pagination>li:最后一个孩子
但最后一个li-在您的案例中是“下一步”按钮,您需要它还是最后一页的号码
在这种情况下,可以使用Xpath检查最后一个li是否没有下一个文本
(//ul[contains(@class,'c-pagination')]/li[not(./a[contains(text(),'Next'))]][last()]
你知道如何使用response.css通过类名找到最后一个li标记的链接吗?很抱歉,我错过了删除我正在调试的非种子部分)现在试试)还添加了css定位器非常感谢。你能告诉我这些代码的问题吗?response.xpath('/*[@id=“js map search result nav”]/ul/li[-1]/a/@href')当然)定位器完全不正确)我会解释:
li[-1] 代码>-您试图获取位置为-1的元素,这是不可能的。要获取最后一个-1元素,请使用(定位器)[last()-1]
<div id="js-map-search-result-nav" class="lookup-result-guide" style="width: 630px;">
<ul class="c-pagination lookup-result-pagination">
<li class="c-pagination__list">
<a href="/en/tokyo/rstLst/57/" class="c-pagination__target c-pagination__target--prev js-pjax-anchor" rel="prev">« Prev</a>
</li>
<li class="c-pagination__list"><a class="c-pagination__target c-pagination__target--num js-pjax-anchor" href="/en/tokyo/rstLst/54/">54</a></li> <li class="c-pagination__list"><a class="c-pagination__target c-pagination__target--num js-pjax-anchor" href="/en/tokyo/rstLst/55/">55</a></li> <li class="c-pagination__list"><a class="c-pagination__target c-pagination__target--num js-pjax-anchor" href="/en/tokyo/rstLst/56/">56</a></li> <li class="c-pagination__list"><a class="c-pagination__target c-pagination__target--num js-pjax-anchor" href="/en/tokyo/rstLst/57/">57</a></li> <li class="c-pagination__list"><span class="c-pagination__target c-pagination__target--num is-selected">58</span></li> <li class="c-pagination__list"><a class="c-pagination__target c-pagination__target--num js-pjax-anchor" href="/en/tokyo/rstLst/59/">59</a></li> <li class="c-pagination__list"><a class="c-pagination__target c-pagination__target--num js-pjax-anchor" href="/en/tokyo/rstLst/60/">60</a></li>
<li class="c-pagination__list">
<a href="/en/tokyo/rstLst/59/" class="c-pagination__target c-pagination__target--next js-pjax-anchor" rel="next">Next »</a>
</li>
</ul>
(//ul[contains(@class,'lookup-result-pagination')]/li)[last()]