解析300 MB文件时Python中的内存错误

时间:2016-04-04 11:40:58

标签: python parsing memory

我使用

解析python 3.5中的xml文件(291 MB)
import xmltodict, json

with open('Wikipedia-20160404094133.xml', encoding='utf-8') as xml_file:
    dic_xml = xmltodict.parse(xml_file.read(), encoding='utf-8', xml_attribs=True)

但是我收到了错误:

dic_xml = xmltodict.parse(xml_file.read(), encoding='utf-8', xml_attribs=True)
MemoryError

我该怎么做才能解决这个问题?

1 个答案:

答案 0 :(得分:1)

结帐this

  

" xmltodict非常快(基于Expat)并且具有内存占用少的流模式,适用于像Discogs这样的大型XML转储或   的维基百科"

基本上,你需要以块和xmltodict"流模式"来读取文件。似乎是为此而建的。