【编程】Python 解析XML

XML 的概念

可扩展标记语言,即 XML,其标准通过柔性的方法创建格式化的信息,通过互联网络进行电子化的结构化数据分享,效果如同协同化的企业网络。

XML 解析器

文档对象模型 DOM 定义了访问和处理文档的标准 , XML DOM 定义了访问和处理 XML 文档的标准,以树型结构表示文档。

XML 的解析

Python 解析 XML文档有几种方法。包括传统的 DOM,以及 简单应用程序接口 SAX(Simple API for XML)解析器。
下面主要描述内置的 xml 模块解析方法。

XML 文档实例

<data>
<items>
<item name="产品1"></item>
<item name="产品2"></item>
<item name="产品3"></item>
<item name="产品4"></item>
<item name="产品5"></item>
</items>
</data>

将上面的文本保存成文件,名称为 “data.xml”,以备实验之用。

XML 接口

xml.etree.ElementTree 模块实现了处理XML数据的方法。元素类型是柔性的容器对象,可以在内存里面存储结构化数据。

例子

import xml.etree.ElementTree 
doc = xml.etree.ElementTree.parse('data.xml').getroot()
for elem in doc.findall('items/item'):
print (elem.get('name'))

输出

DOM 的最小实现模块

DOM 实例

xml.dom.minidom 是一个DOM接口的最小化实现,和其他语言类似,目的是保持比较小的程序规模。一般初学者可以使用 xml.etree.ElementTree 模块更方便。

例子

from xml.dom import minidom 
xmldoc = minidom.parse('data.xml')
product_list = xmldoc.getElementsByTagName('item')
print("项数量 : ", len(product_list))
for product in product_list:
print(product.attributes['name'].value)

输出



【编程】Python 终止程序
【编程】Python 随机数
【编程】Python 异常处理
【编程】Python 日期和时间
【编程】Python 多线程套接字
【编程】Python 套接字
【编程】Python FTP
【编程】Python 网页
【编程】Python 访问Web

此条目发表在人工智能, 服务器, 程序开发分类目录,贴了, , 标签。将固定链接加入收藏夹。