今天我们将学习如何在 Python 中将 XML 转换为 JSON 和 XML 转换为字典。我们可以使用 Python 的 xmltodict
模块来读取 XML 文件并将其转换为字典或 JSON 数据。我们还可以在大型 XML 文件上进行流式处理,并将其转换为字典。在进入编码部分之前,让我们首先了解为什么需要进行 XML 转换。
将 XML 转换为字典/JSON
XML 文件已经逐渐过时,但在网络上仍然有许多大型系统在使用这种格式。XML 比 JSON 更重,因此大多数开发人员更喜欢在其应用程序中使用后者。当应用程序需要理解任何来源提供的 XML 时,将其转换为 JSON 可能是一项繁琐的任务。Python 中的 xmltodict
模块使这项任务变得非常简单和直观。
开始使用 xmltodict
我们可以开始使用 xmltodict
模块,但首先需要安装它。我们将主要使用 pip 来进行安装。
安装 xmltodict 模块
以下是我们如何使用 Python 包索引(pip)安装 xmltodict 模块:
pip install xmltodict
由于 xmltodict
是一个非常轻量级的模块,因此安装速度会很快。这是此安装的输出:!python install xmltodict module 最好的一点是,该模块不依赖于任何其他外部模块,因此它是轻量级的,并且避免了任何版本冲突。仅供演示,在基于 Debian 的系统上,可以使用 apt
工具轻松安装此模块:
sudo apt install python-xmltodict
另一个优点是该模块有一个官方的 Debian 软件包。
Python XML 转换为 JSON
尝试此模块的最佳方法是执行其最初设计的操作之一,即执行 XML 到 JSON 的转换。让我们看一下如何完成此操作的代码片段:
import xmltodict
import pprint
import json
my_xml = """
<audience>
<id what="attribute">123</id>
<name>Shubham</name>
</audience>
"""
pp = pprint.PrettyPrinter(indent=4)
pp.pprint(json.