XPath:如何为所有文本节点找到父元素及其类

时间:2013-02-06 04:22:41

标签: python html xml xpath lxml

对于所有文本节点,如何找到父元素的类和标记类型

1 个答案:

答案 0 :(得分:1)

XPath documentation来看,并不是那么困难。这是我的专用XML文件:

<root>
    <child1>
        <text>Text1</text>
    </child1>
    <child2>
        <text>Text2</text>
    </child2>
    <child3>
        <text>Text3</text>
    </child3>
    <child4>
        <text>Text4</text>
    </child4>
</root>

现在使用实现XPath支持的lxml lib(内置Python XML库不是这种情况),我们在这里:

>>> from lxml import etree
>>> root = etree.parse(path).getroot()
>>> for p in root.xpath('//text/..'):
    print p.tag


child1
child2
child3
child4