Python lxml getpath错误

时间:2016-06-10 19:20:39

标签: python lxml

我试图从xml中的设备配置中获取完整的xpath列表。

当我运行它时,我得到:

 AttributeError: 'Element' object has no attribute 'getpath'

代码只是几行

import xml.etree.ElementTree
import os
from lxml import etree

file1 = 'C:\Users\test1\Desktop\test.xml'
file1_path = file1.replace('\\','/')


e = xml.etree.ElementTree.parse(file1_path).getroot()

for entry in e.iter():
    print e.getpath(entry)

之前有人遇到过这个问题吗?

谢谢

里奇

1 个答案:

答案 0 :(得分:2)

你这样做不正确,不要使用 lxml .etree 来调用getroot只是解析它:

import lxml.etree as et

file1 = 'C:/Users/test1/Desktop/test.xml'

root = et.parse(file1)
for e in root.iter():
    print root.getpath(e)

如果您正在处理命名空间,可能会发现getelementpath usefule:

 root.getelementpath(e)