Xml - 使用Python查找Element By标签

时间:2016-07-11 14:24:13

标签: python xml xml-parsing

我正在尝试从一堆xml文件中提取一些数据。现在,问题是所有文件的结构不完全相同,因此,只是迭代子项并提取值很困难。

对于这样的xml文档,python是否有getElementByTag()方法?我已经看到这样的方法可供C#,C ++用户使用,但无法找到Python的任何内容。

非常感谢任何帮助!

1 个答案:

答案 0 :(得分:2)

是的,在包xml.etree中,您可以找到与XML相关的内置函数。 (也适用于python2)

您正在寻找的是findall

例如:

import xml.etree.ElementTree as ET
tree = ET.fromstring(some_xml_data)
all_name_elements = tree.findall('*/name')

使用:

In [1]: some_xml_data = "<help><person><name>dean</name></person></help>"

我得到以下内容:

In [10]: tree.findall("*/name")
Out[10]: [<Element 'name' at 0x7ff921edd390>]