一尘不染

Python-如何在Python中解析XML?

python xml

我在包含XML的数据库中有很多行,并且试图编写Python脚本来计算特定节点属性的实例。

我的树看起来像:

<foo>
   <bar>
      <type foobar="1"/>
      <type foobar="2"/>
   </bar>
</foo>

如何使用Python访问XML中的属性“1”和“2”?


阅读 348

收藏
2020-02-06

共1个答案

一尘不染

我建议ElementTree。相同的API还有其他兼容的实现,例如lxmlcElementTreePython标准库本身中。但是,在这种情况下,他们主要添加的是更高的速度-编程的难易程度取决于ElementTree定义的API 。

首先rootXML 构建XMLElement实例,例如使用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)

和类似的,通常很简单的代码模式。

2020-02-06