熊猫有时会写出空的或损坏的文件

时间:2015-08-31 15:44:10

标签: python excel python-2.7 pandas

我已经使用了一段时间的熊猫,我认为它是一个很棒的工具。我制作了一个程序,用来从用户收集的一些数据中生成一些excel文件。最终用户已经测试并使用它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'

0 个答案:

没有答案