第七章:数据持久存储与交换-xml.etree.ElementTree:XML操纵API-解析XML文档

7.5 xml.etree.ElementTree:XML操纵API
ElementTree库提供了一些工具,可以使用基于事件和基于文档的API来解析XML,可以用XPath表达式搜索已解析的文档,还可以创建新文档或修改现有文档。

7.5.1 解析XML文档
已解析的XML文档在内存中由ElementTree和Element对象表示,这些对象基于XML文档中节点嵌套的方式按树结构相互连接。用parse()解析一个完整的文档时,会返回一个ElementTree实例。这个树了解输入文档中的所有数据,另外还可以原地搜索或操纵树中的节点。基于这种灵活性,可以更方便地处理已解析的文档,不过,与基于事件的解析方法相比,这种方法往往需要更多的内存,因为必须一次加载整个文档。
对于简单的小文档(如以下播客列表,被表示为一个OPML大纲),内存需求并不大。
在这里插入图片描述

要解析这个文档,需要向parse()传递一个打开的文件句柄。

from xml.etree import ElementTree

with open('podcasts.opml','rt') as f:
    tree = ElementTree.parse(f)

print(tree)

这个方法会读取数据、解析XML,并返回一个ElementTree对象。
运行结果:

<xml.etree.ElementTree.ElementTree object at 0x0000000002F0E278>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值