Python标准库中自带的 ElementTree 是一个用于解析或创建XML格式数据的模块。它非常易于使用,支持python2和python3。在本文中,我们将讲解在Python中如何使用ElementTree处理XML。
1. 安装和导入ElementTree
ElementTree 是一个Python标准库,所以我们无需安装就可以使用它。如果你使用的是Python2.x版本,则需要安装 ElementTree 模块。你可以使用以下命令来安装 ElementTree:
pip install ElementTree
import xml.etree.ElementTree as ET
2. 解析XML
要解析XML文件或字符串,我们可以使用 ElementTree 的 parse() 方法。以下是一个解析XML字符串的示例:
import xml.etree.ElementTree as ET
xml_data = "<note><to>Tove</to><from>Jani</from><heading>Reminder</heading><body>Don't forget me this weekend!</body></note>"
root = ET.fromstring(xml_data)
for child in root:
print(child.tag, child.text)
在上面的示例中,我们首先导入了 ElementTree 模块,然后创建一个XML字符串。接下来,我们使用ET.fromstring() 方法将XML字符串转换为 Element 对象,最后,我们遍历节点以输出其标签和文本。
要解析 XML 文件,我们可以使用 ElementTree.parse() 方法,示例代码如下:
import xml.etree.ElementTree as ET
tree = ET.parse('example.xml')
root = tree.getroot()
for child in root:
print(child.tag, child.text)
在上述示例中,我们导入了 ElementTree 模块后,使用 parse() 方法将XML文件解析为 ElementTree,在获取根节点后,使用for循环输出各个子节点的标签和文本。
3. 创建XML
我们也可以使用 ElementTree 创建 XML。以下是一个创建XML文档的示例:
import xml.etree.ElementTree as ET
from xml.etree.ElementTree import Element, SubElement
root = Element('note')
note_to = SubElement(root, 'to')
note_to.text = 'Tove'
note_from = SubElement(root, 'from')
note_from.text = 'Jani'
note_heading = SubElement(root, 'heading')
note_heading.text = 'Reminder'
note_body = SubElement(root, 'body')
note_body.text = "Don't forget me this weekend!"
xmlstr = ET.tostring(root).decode()
print(xmlstr)
在上面的示例中,我们首先导入了 ElementTree 模块。然后,我们创建一个名为 root 的 Element 对象,并使用 SubElement 方法添加子节点。通过设置 SubElement 的 text 属性,我们为子节点分配文本内容。最后,我们使用 ET.tostring() 方法将 Element 对象转换为XML字符串并输出结果。
4. 其他操作
除了基本的解析和创建操作,ElementTree 还提供了其他常用操作,包括:
- 查找某个特定节点
- 遍历XML树
- 删除节点
- 修改节点
在此不再赘述。
以上就是使用Python标准库ElementTree处理XML的完整攻略。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:python标准库ElementTree处理xml - Python技术站