首页 > 解决方案 > 使用python将xml数据转储到csv文件中的单元格中

问题描述

我有一个 XML 数据,其中还包含 HTML 数据。我正在尝试将此 XML 数据转储到 csv 文件中的一个单元格,该文件还包含其他列。现在,它正在分裂自己并进入不同的(相邻的)单元格。因此使用 pandas 读取 csv 会引发错误

标记数据时出错。C 错误:预计第 3 行中有 94 个字段,看到 221

我也研究了类似的情况。但它没有帮助,因为它来自数据库。因此,解决方法功能将有所不同。

我不想解析 XML 数据。我只想将整个 XML 数据保存到 csv 文件中的一个单元格中。

此外,出于保密原因,我不能分享数据快照,但我希望能传达这个问题。

任何帮助表示赞赏。

标签: pythonxmlcsv

解决方案


您可以使用内置的 csv 包,尝试将 xml 包装为列表中的字符串:

import csv

xml = ["""<?xml version="1.0"?>
<catalog>
   <book id="bk101">
      <author>Gambardella, Matthew</author>
      <title>XML Developer's Guide</title>
      <genre>Computer</genre>
      <price>44.95</price>
      <publish_date>2000-10-01</publish_date>
      <description>An in-depth look at creating applications 
      with XML.</description>
   </book>
</catalog>"""]

with open("test.csv", "w", encoding="utf8") as out_file:
    writer = csv.writer(out_file)
    writer.writerow(xml)

然后,您应该可以使用 pandas 阅读它。


推荐阅读