python解析xml文件

XML文件

xml:即可扩展标记语言,xml是互联网数据传输的重要工具,它可以跨越互联网任何的平台,不受编程语言和操作系统的限制,可以说它是一个拥有互联网最高级别通行证的数据携带者。xml是当前处理结构化文档信息中相当给力的技术,xml有助于在服务器之间穿梭结构化数据,这使得开发人员更加得心应手的控制数据的存储和传输。

Xml用于标记电子文件使其具有结构性的标记语言,可以用来标记数据、定义数据类型,是一种允许用户对自己的标记语言进行定义的源语言。Xml是标准通用标记语言(SGML)的子集,非常适合Web传输。XML提供统一的方法来描述和交换独立于应用程序或供应商的结构化数据。

其内容形式如下图所示(这是一个图片的xml文件):

hgXK5F.png


python解析XML文件

我们以上图所示XML文件对其进行解析。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
# 导入相关包
import xml.etree.ElementTree as ET

# 打开XML文件
file = open('wallhaven-12.xml', 'r')
# 获得节点树
tree = ET.parse(file)
# 得到根节点
root = tree.getroot()
# 根据TagName定位元素
size = root.find('size')
obj = root.find('object')
# 得到标签对应内容
print(size.find('width').text) # 4000
print(obj.find('name').text) # face
# 等价于
print(size.findtext('width'))
print(obj.findtext('name'))

其它方法:

  • get:获取标签的属性
  • findall():获取标签名相同的全部对象