python xml 解析库_如何理解XML解析库?

本文介绍了Python中两个用于XML处理的库:untangle和xmltodict。untangle将XML文档转换为Python对象,允许轻松访问节点和属性;xmltodict则使XML操作类似JSON,提供方便的字典接口。这两个库支持从文件和URL加载XML,还支持流式处理和命名空间。通过这两个库,开发者可以更高效地解析和操作XML数据。
摘要由CSDN通过智能技术生成

untangle

untangle 是一个简洁的用于解析 XML 文档的库。输入一个 XML 文档后,untangle 将文档的结构映射成结点和属性,并返回一个 Python 对象。

形如以下的 XML 文件:<?xml  version="1.0"?>

可以使用以下的方法进行加载:import untangle

obj = untangle.parse('path/to/file.xml')

加载完成后,你可以运行以下代码获取到 child 标签的 name 属性值:obj.root.child['name']

untangle 同时支持使用字符串的形式和 URL 的形式加载 XML 文档。

xmltodict

xmltodict 是另一个简洁的库,它可以让开发者能够像操作 JSON 一样操作 XML 文档。

形如以下的 XML 文档:

elements

more elements

element as well

可以使用如下方法加载,从而得到一个 Python 的 dict 对象:import xmltodict

with open('path/to/file.xml') as fd:

doc = xmltodict.parse(fd.read())

随后你可以根据以下的方法访问文档的元素、属性和属性值:doc['mydocument']['@has'] # == u'an attribute'

doc['mydocument']['and']['many'] # == [u'elements', u'more elements']

doc['mydocument']['plus']['@a'] # == u'complex'

doc['mydocument']['plus']['#text'] # == u'element as well'

xmltodict 中的 unparse 函数可以根据字典返回一个 XML 文档。同时, xmltodict 支持流式操作以处理不适宜加载到内存的文件,并且支持命名空间。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值