大pandas有时写空或损坏的文件

我一直在使用pandas一段时间,我认为这是一个很好的工具。 我做了一个程序,从用户收集的一些数据生成一些Excel文件。 最终用户已经testing并使用了6个月; 它从来没有失败,直到昨天,当它产生了一个dagamaged excel文件。 当我用文本编辑器打开它时,它完全是空白的。 生成这个文件的代码是这样的:

escritor = pandas.ExcelWriter(direccion, engine='xlsxwriter') listaTotal.to_excel(escritor, index = False) escritor.save() 

和:

  escritor = pandas.ExcelWriter(direccion + '.xlsx', engine='xlsxwriter') self.listaFact.to_excel(escritor, index = False, startrow = 1, startcol = 0, sheet_name = 'Hoja1') escritor.save() 

第二个代码片段也使用“xlsxwriter”的一些格式选项,这里是一个例子:

  format = workbook.add_format() format.set_font_size(9) format.set_font_name('Sans Serif 12cpi') format.set_border() format.set_text_wrap() 

这个错误发生了两次; 大约1个月前和昨天。 我不能重复错误,我不知道发生了什么。 还有追溯在这里,它显示了程序读取文件时的问题,但是这个文件是由之前发布的代码生成的:

 Exception in Tkinter callback Traceback (most recent call last): File "C:\Python27\lib\lib-tk\Tkinter.py", line 1532, in __call__ return self.func(*args) File "C:\Users\WINNER\Documents\Visual Studio 2013\Projects\PythonApplication4\PythonApplication4\PythonApplication4.py", line 792, in botonGenerarPedido self.generarPedido() File "C:\Users\WINNER\Documents\Visual Studio 2013\Projects\PythonApplication4\PythonApplication4\PythonApplication4.py", line 904, in generarPedido self.generarVentasDia() File "C:\Users\WINNER\Documents\Visual Studio 2013\Projects\PythonApplication4\PythonApplication4\PythonApplication4.py", line 927, in generarVentasDia listaTotal = pandas.io.excel.read_excel(direccion) File "C:\Python27\lib\site-packages\pandas\io\excel.py", line 151, in read_excel return ExcelFile(io, engine=engine).parse(sheetname=sheetname, **kwds) File "C:\Python27\lib\site-packages\pandas\io\excel.py", line 188, in __init__ self.book = xlrd.open_workbook(io) File "C:\Python27\lib\site-packages\xlrd\__init__.py", line 435, in open_workbook ragged_rows=ragged_rows, File "C:\Python27\lib\site-packages\xlrd\book.py", line 91, in open_workbook_xls biff_version = bk.getbof(XL_WORKBOOK_GLOBALS) File "C:\Python27\lib\site-packages\xlrd\book.py", line 1230, in getbof bof_error('Expected BOF record; found %r' % self.mem[savpos:savpos+8]) File "C:\Python27\lib\site-packages\xlrd\book.py", line 1224, in bof_error raise XLRDError('Unsupported format, or corrupt file: ' + msg) XLRDError: Unsupported format, or corrupt file: Expected BOF record; found '\x00\x00\x00\x00\x00\x00\x00\x00'