xlrd无法读取从电子邮件附件下载的xlsx文件

这是一个非常非常奇怪的问题。 我有一个很大的excel文件(我不能讨论它的内容,因为它是敏感的数据)是一个.xlsx,是一个有效的excel文件。

当我从我的电子邮件中下载并保存在我的桌面上,并尝试使用xlrd打开工作簿时,xlrd会抛出一个AssertionError,并且不会显示出错。

当我用我的文件浏览器打开文件,然后保存(不作任何改变),它与xlrd完美的工作。

有没有人遇到过这个问题? 我尝试传递各种标志到open_workbook函数无济于事,我试着用googlesearch错误。 到目前为止我还没有find任何东西。

我使用的方法如下


     file = open('bigexcelfile.xlsx')
     fileString = file.read()
     wb = open_workbook(file_contents = filestring)

请帮忙! 错误如下


    回溯(最近一次通话最后):
      在文件“./varify/samples/resources.py”,行354
        工作簿= xlrd.open_workbook(file_contents = fileString)
      在open_workbook中的文件“/home/vagrant/varify-env/lib/python2.7/site-packages/xlrd/__init__.py”,第416行
         ragged_rows = ragged_rows,
      在open_workbook_2007_xml中的文件“/home/vagrant/varify-env/lib/python2.7/site-packages/xlrd/xlsx.py”,第791行
         x12sheet.process_stream(zflo,标题)
      文件“/home/vagrant/varify-env/lib/python2.7/site-packages/xlrd/xlsx.py”,第528行,在own_process_stream
         self_do_row(ELEM)
      在do_row中的文件“/home/vagrant/varify-env/lib/python2.7/site-packages/xlrd/xlsx.py”,第722行
        断言tvalue不是None
     Asse田

重命名或保存为您的Excel文件为.xls而不是.xlsx谢谢

对于这种格式,请使用pyopenxl而不是xlrd: https ://openpyxl.readthedocs.org/en/latest/