xpath获取下一页,兄弟结点的妙用

Posted 椿与湫

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了xpath获取下一页,兄弟结点的妙用相关的知识,希望对你有一定的参考价值。

第一页的情况:

 

第四页的情况 :

 

 

文章的链接:  http://tech.huanqiu.com/science/2018-02/11605853_4.html

 

    从上面我们可以看到,如果仅仅用xpath获取下一页的链接 例如:  //div[@id="pages"]/a[@class="a1"][text()="下一页"]/@href     

就会在第四页的时候重复获取相同的链接,我们通过观察可以发现一些规律:

所在的页码是在与链接a标签同级的span标签里面,这个时候我们可以采用兄弟结点,来解决这个问题,

//div[@id="pages"]/span/following-sibling::a[text()!="下一页"]/@href

 

说明:

1  获取到span标签的下一个兄弟结点a标签  (following-sibling::a)

2  寻找它的text内容不为"下一页"  ([text()!="下一页"])

3  再取这个a标签的href属性  (@href)

 

这样在第四页的时候获取到的链接为Null , 就不会重复获取下一页的链接了

 

以上是关于xpath获取下一页,兄弟结点的妙用的主要内容,如果未能解决你的问题,请参考以下文章

C语言数据结构算法——为儿子兄弟树的叶子结点赋值

算法导论——斐波那契堆

第十二届蓝桥杯 ——左孩子右兄弟

第十二届蓝桥杯 ——左孩子右兄弟

第五章小结

第77题判断二叉树的堂兄弟结点