6

这是一个非常非常奇怪的问题。我有一个相当大的 excel 文件(其内容我无法讨论,因为它是敏感数据),它是一个 .xlsx 并且是一个有效的 excel 文件。

当我从我的电子邮件中下载它并将其保存在我的桌面上并尝试使用 xlrd 打开工作簿时,xlrd 会抛出一个 AssertionError 并且不会告诉我出了什么问题。

当我使用我的文件浏览器打开文件,然后保存它(不做任何更改)时,它与 xlrd 完美配合。

有没有人遇到过这个问题?我尝试将各种标志传递给 open_workbook 函数但无济于事,我尝试在谷歌上搜索错误。到目前为止,我还没有找到任何东西。

我使用的方法如下

    文件 = 打开('bigexcelfile.xlsx')
    fileString = file.read()
    wb = open_workbook(file_contents=filestring)

请帮忙!错误如下

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

4

2 回答 2

2

将 Excel 文件重命名或另存为 .xls 而不是 .xlsx 谢谢

于 2015-04-10T15:01:58.293 回答
1

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

于 2015-07-20T15:39:31.547 回答