概述
遇到一个新需求,需要获取下图的div内部的两个标签内容:
需要获取的是h3+p标签的html内容,ul标签的内容不要。
第一个想到的是使用"or",将两个标签的html全部抓取。
我们常用的是针对xpath过滤器里相同标签不同属性使用"or"条件来抓取,但是现在遇到的是针对不同标签使用"or",用了以下几种方式都不能这样操作:
//div[@id='PartDetails__Overview_Section']//p or h3
//div[@id='PartDetails__Overview_Section']//[p or h3]
//div[@id='PartDetails__Overview_Section']//*[p or h3]
查了一下别人的方法,原来下面的办法可以:
//div[@id='PartDetails__Overview_Section']//*[self::p or self::h3]
“or”的重点就是://*[self:p or self:h3]
使用的效果是这样的:
选择器将这h3和p两个分别抓取,而不是作为整体一起抓取。
不过目前此方法不适用于我,需要的可以拿走。
我自己只能使用:
//div[@id='PartDetails__Overview_Section']
这样整体抓取了,后期再去掉ul的内容。
最后
以上就是风中彩虹为你收集整理的xpath对标签使用 or / 或者的全部内容,希望文章能够帮你解决xpath对标签使用 or / 或者所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复