不了解 Xpath的contains函数的可以看下w3c官方文档 Xpath函数
可以看出 contains函数表示意思是,第一个参数字符串包含第二个参数时,返回true
实际用起来可能会有点差异(由于结合了路径表达式和属性)
比如我们会有这么用
tree.xpath('//div[contains(@class,"abc")]') #选取class属性包含字符串"abc"的节点
还有,在需要判断节点是否包含某个子节点时候,可以这么用
tree.xpath('//div[contains(/,a)]') #判断div是否满足包含子节点a这个条件,是则返回满足条件的div节点
当需要多个函数条件时,可以这么用
tree.xpath('//div[contains(@class,"abc") and contains(@class,"cbf")]') #返回class属性同时包含 "abc" 和 "cbf" 字符串的div节点
tree.xpath('//div[contains(@class,"abc") or contains(@class,"cbf")]') #返回class属性包含 "abc" 或 "cbf" 字符串的div节点
以上,就是关于xpath的一个总结,第二种用法不太常用,特此记录下,希望能帮助到大家~