小编给大家分享一下Python中XML解析库有哪些,相信大部分人都还不怎么了解,因此分享这篇文章给大家学习,希望大家阅读完这篇文章后大所收获,下面让我们一起去学习方法吧!

untangle

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

形如以下的 XML 文件:

<?xmlversion="1.0"?><root><childname="child1"></root>

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

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

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

obj.root.child['name']

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

xmltodict

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

形如以下的 XML 文档:

<mydocumenthas="anattribute"><and><many>elements</many><many>moreelements</many></and><plusa="complex">elementaswell</plus></mydocument>

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

importxmltodictwithopen('path/to/file.xml')asfd:doc=xmltodict.parse(fd.read())

随后你可以根据以下的方法访问文档的元素、属性和属性值:

doc['mydocument']['@has']#==u'anattribute'doc['mydocument']['and']['many']#==[u'elements',u'moreelements']doc['mydocument']['plus']['@a']#==u'complex'doc['mydocument']['plus']['#text']#==u'elementaswell'

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

以上是Python中XML解析库有哪些的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注亿速云行业资讯频道!