python lxml如何查找多个标记?
python lxml how to find multiple markup?
我知道如果我想找到我可以使用的所有 a
个节点 root.xpath('.//a')
。但是如果我想遍历所有a
或b
个节点(深度优先搜索)怎么办?
<?xml version="1.0"?>
<root>
<x><a>one</a></x>
<x><x><b>three</b></x></x>
<b>three</b>
</root>
有一些可能的方法,这里是其中的一些。
使用联合运算符 (|
) :
.//a | .//b
使用 or
运算符允许多个可能的 self::element
,如评论中所述:
.//*[self::a or self::b]
或两者混合:
.//*[self::a | self::b]
我知道如果我想找到我可以使用的所有 a
个节点 root.xpath('.//a')
。但是如果我想遍历所有a
或b
个节点(深度优先搜索)怎么办?
<?xml version="1.0"?>
<root>
<x><a>one</a></x>
<x><x><b>three</b></x></x>
<b>three</b>
</root>
有一些可能的方法,这里是其中的一些。
使用联合运算符 (|
) :
.//a | .//b
使用 or
运算符允许多个可能的 self::element
,如评论中所述:
.//*[self::a or self::b]
或两者混合:
.//*[self::a | self::b]