我正在使用python 3和lxml.etree,我需要获取具有定义名称的所选元素的所有父元素的列表。
这是我的XML结构的示例
<root>
<father id="1">
<father id="2">
<child>
....
我确实有一个element对象,并且需要所有对象的列表(例如,获取其id属性)
使用
element.xpath("parent::father)
返回列表,其中只有第一个父对象(父亲id = 2),但是无论我有多深,我都需要完整的路径。
谢谢
答案 0 :(得分:0)
谢谢
@chrisis提供了正确的答案。可能是由于我的英语水平不高,我没有意识到现实生活中的parent::
(在这种情况下为;-)通常仅比我高一层,而元素(和我)可以拥有许多{{1} }(即使此处的关键字不是复数;-)
我只需要检查所有祖先元素是否都是父亲,但是当ancestor::
返回一个列表时,这很容易检查。
非常感谢。