python - 在python中解析xml内容

标签 python xml

我想用Python将信息从xml写入dict。 下面是xml文件:

<data>
  <files>
    <links>
      <item>
        <file_name>file1</file_name>
        <id>100</id>
      </item>
      <item>
        <file_name>file2</file_name>
        <id>200</id>
      </item>
      <item>
        <file_name>file3</file_name>
        <id>300</id>
      </item>
    </links>
  </files>
</data>

Python 字典如:

xml_content = { 'file1' = 100, 'file2' = 200, 'file3' = 300 }

感谢您的帮助

最佳答案

使用xmltodict这个简单的代码可用于提取您的字典:

使用pip install xmltodict安装xmltodict

import xmltodict

doc = xmltodict.parse("""
<data>
  <files>
    <links>
      <item>
        <file_name>file1</file_name>
        <id>100</id>
      </item>
      <item>
        <file_name>file2</file_name>
        <id>200</id>
      </item>
      <item>
        <file_name>file3</file_name>
        <id>300</id>
      </item>
    </links>
  </files>
</data>
""")

d = {}

for item in doc["data"]["files"]["links"]["item"]:
    d[item["file_name"]] = int(item["id"])

print(d)

d 将是:

{u'file3': 300, u'file2': 200, u'file1': 100}

或者,您可以从如下文件加载 xml:

with open('path/to/file.xml') as fd:
    doc = xmltodict.parse(fd.read())

关于python - 在python中解析xml内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37796347/

相关文章:

c - 在 C 语言中,XML 是否是 RPG 引擎内部使用的良好格式?

xml - 在 Oracle 数据库中存储 XML 的最佳列是什么?

java - XML序列化只序列化一个字段

python - Pycharm2018中的pip版本

python - 根据条件使mongoDB中的索引过期

python - Pytables/Pandas : Combining (reading? ) 多个 HDF5 存储按行拆分

python - 变量名似乎被覆盖

python - Matplotlib:从条形图中获取颜色和 x/y 数据

javascript - 如何在java中将NCPDP标准格式消息转换为xml格式?

android - 在 Fragment 的线性布局中动态添加 View