Python3 XML 解析
Python3 XML 解析
XML(Extensible Markup Language)是一种标记语言,它可以定义自己的标记,用于描述数据。在 Python3 中,使用标准模块 xml
进行 XML 解析。
1. 解析 XML 文件
解析 XML 文件的步骤如下:
-
导入
ElementTree
模块import xml.etree.ElementTree as ET
-
解析 XML 文件
tree = ET.parse('example.xml')
以上代码将 XML 文件解析成一个
ElementTree
对象tree
。 -
获取根元素
root = tree.getroot()
根元素是整个 XML 文件的最顶层元素,使用
getroot()
方法可以获取到。 -
遍历 XML 文档
可以使用
iter()
方法遍历整个 XML 文档:for element in root.iter(): print(element.tag, element.text)
以上代码输出 XML 文档中每个元素的标签和内容。
2. 获取元素的属性
可以使用 get()
方法获取元素的属性:
attribute_value = element.get('attribute_name')
其中,attribute_name
是属性的名称。
3. 查找元素
可以使用 find()
方法查找元素:
element = root.find('element_name')
其中,element_name
是要查找的元素的名称。
如果要查找多个元素,可以使用 findall()
方法:
elements = root.findall('element_name')
4. 创建新的 XML 文档
可以使用 Element()
方法创建新的元素:
new_element = ET.Element('element_name')
其中,element_name
是元素的名称。
如果要给元素添加属性,可以使用 set()
方法:
new_element.set('attribute_name', 'attribute_value')
如果要为元素添加文本内容,可以使用 text
属性:
new_element.text = 'text_content'
如果要将元素添加到父元素中,可以使用 append()
方法:
parent_element.append(new_element)
最后,使用 ElementTree()
方法将元素树写入文件:
tree = ET.ElementTree(root_element)
tree.write('new_example.xml')