Python-如何在Python中解析XML?
我在包含XML的数据库中有很多行,并且试图编写Python脚本来计算特定节点属性的实例。
我的树看起来像:
<foo>
<bar>
<type foobar="1"/>
<type foobar="2"/>
</bar>
</foo>
如何使用Python访问XML中的属性“1”和“2”?
-
我建议ElementTree。相同的API还有其他兼容的实现,例如
lxml
和cElementTree
在Python
标准库本身中。但是,在这种情况下,他们主要添加的是更高的速度-编程的难易程度取决于ElementTree
定义的API 。首先
root
用XML
构建XML
的Element
实例,例如使用XML
函数,或者通过解析文件,例如:import xml.etree.ElementTree as ET root = ET.parse('thefile.xml').getroot()
或中显示的许多其他方式中的任何一种
ElementTree
。然后执行以下操作:for type_tag in root.findall('bar/type'): value = type_tag.get('foobar') print(value)
和类似的,通常很简单的代码模式。