【发布时间】:2017-01-27 17:49:35
【问题描述】:
我正在尝试解析文件,然后使用 openpyxl 将处理后的数据保存到 excel 中。当要解析的文件很小时,我能够成功保存。但是当要解析的文件很大时,我得到以下错误:
Traceback (most recent call last):
File "C:\Users\522094\Desktop\vdbench\vdbench_new - Copy.py", line 195, in <module>
a.generate_report()
File "C:\Users\522094\Desktop\vdbench\vdbench_new - Copy.py", line 185, in generate_report
self.wb.save(filename=report_path)
File "C:\Python27\lib\site-packages\openpyxl\workbook\workbook.py", line 339, in save
save_workbook(self, filename)
File "C:\Python27\lib\site-packages\openpyxl\writer\excel.py", line 268, in save_workbook
writer.save(filename)
File "C:\Python27\lib\site-packages\openpyxl\writer\excel.py", line 250, in save
self.write_data()
File "C:\Python27\lib\site-packages\openpyxl\writer\excel.py", line 81, in write_data
self._write_worksheets()
File "C:\Python27\lib\site-packages\openpyxl\writer\excel.py", line 199, in _write_worksheets
xml = ws._write()
File "C:\Python27\lib\site-packages\openpyxl\worksheet\worksheet.py", line 866, in _write
return write_worksheet(self)
File "C:\Python27\lib\site-packages\openpyxl\writer\worksheet.py", line 177, in write_worksheet
xf.write(tables.to_tree())
File "C:\Python27\lib\contextlib.py", line 24, in __exit__
self.gen.next()
File "C:\Python27\lib\site-packages\et_xmlfile\xmlfile.py", line 50, in element
self._write_element(el)
File "C:\Python27\lib\site-packages\et_xmlfile\xmlfile.py", line 77, in _write_element
xml = tostring(element)
File "C:\Python27\lib\xml\etree\ElementTree.py", line 1126, in tostring
ElementTree(element).write(file, encoding, method=method)
File "C:\Python27\lib\xml\etree\ElementTree.py", line 820, in write
serialize(write, self._root, encoding, qnames, namespaces)
File "C:\Python27\lib\xml\etree\ElementTree.py", line 939, in _serialize_xml
_serialize_xml(write, e, encoding, qnames, None)
File "C:\Python27\lib\xml\etree\ElementTree.py", line 939, in _serialize_xml
_serialize_xml(write, e, encoding, qnames, None)
File "C:\Python27\lib\xml\etree\ElementTree.py", line 939, in _serialize_xml
_serialize_xml(write, e, encoding, qnames, None)
File "C:\Python27\lib\xml\etree\ElementTree.py", line 940, in _serialize_xml
write("</" + tag + ">")
MemoryError
请建议如何解决。
【问题讨论】:
标签: openpyxl