如何将堆栈溢出转储的xml文件转换为csv文件

时间:2014-09-28 05:16:53

标签: python-3.x data-dump

我有.xml格式的堆栈溢出数据转储文件,接近27GB,我想在.csv文件中转换它们。请有人告诉我,将xml转换为csv文件或python程序的工具

2 个答案:

答案 0 :(得分:0)

使用其中一个python xml模块来解析.xml文件。除非你有更多27GB内存,否则你需要逐步增加,所以相应地限制你的选择。使用csv模块编写.csv文件。

你真正的问题是这个。 Csv文件是字段行。它们代表一个矩形表。通常,Xml文件可以表示更复杂的结构:分层数据库和/或多个表。因此,理解数据转储格式以提取记录以写入.csv文件是真正的问题。

答案 1 :(得分:0)

我编写了一个PySpark函数来解析.csv中的.xml。 XmltoCsv_StackExchange是github回购。用它在2-3分钟内在最小的2核和2 GB RAM Spark设置上转换1 GB的xml。它也可以转换27GB文件,只需将minPartitions从4增加到128左右。

raw = (sc.textFile(fileName, 4))