知行编程网知行编程网  2022-11-26 19:00 知行编程网 隐藏边栏  4 
文章评分 0 次,平均分 0.0
导语: 本文主要介绍了关于如何理解XML解析库?的相关知识,包括名词解释地址解析协议,以及XML数据库这些编程知识,希望对大家有参考作用。

如何理解XML解析库?


untangle

untangle 是一个用于解析 XML 文档的紧凑型库。将 XML 文档作为输入,untangle 将文档的结构映射到节点和属性,并返回一个 Python 对象。

形如以下的 XML 文件:

<?xml version="1.0"?>
<root>
    <child name="child1">
</root>

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

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

加载完成后,可以运行如下代码获取子标签的name属性值:

obj.root.child['name']

untangle 支持 XML 文档的字符串和 URL 加载。


xmltodict

xmltodict 是另一个简洁的库,它允许开发人员像操作 JSON 一样操作 XML 文档。

形如以下的 XML 文档:

<mydocument has="an attribute">
  <and>
    <many>elements</many>
    <many>more elements</many>
  </and>
  <plus a="complex">
    element as well
  </plus>
</mydocument>

可以使用如下方法加载,从而得到一个 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支持流式操作处理不适合加载到内存的文件,支持命名空间。

本文为原创文章,版权归所有,欢迎分享本文,转载请保留出处!

知行编程网
知行编程网 关注:1    粉丝:1
这个人很懒,什么都没写
扫一扫二维码分享