簡體   English   中英

xlrd無法讀取從電子郵件附件下載的xlsx文件

[英]xlrd cannot read xlsx file downloaded from email attachment

這是一個非常非常奇怪的問題。 我有一個很大的excel文件(由於敏感數據,我無法討論其內容),它是.xlsx,是有效的excel文件。

當我從電子郵件中下載該文件並將其保存在桌面上並嘗試使用xlrd打開工作簿時,xlrd會引發AssertionError並不會告訴我出了什么問題。

當我使用文件瀏覽器打開文件,然后保存它(不進行任何更改)時,它與xlrd完美配合。

有人遇到過這個問題嗎? 我嘗試將各種標志傳遞給open_workbook函數都無濟於事,並嘗試使用Google搜索錯誤。 到目前為止,我還沒有發現任何東西。

我使用的方法如下

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

請幫忙! 錯誤如下

Traceback (most recent call last):
      File "./varify/samples/resources.py", line 354, in post
        workbook = xlrd.open_workbook(file_contents=fileString)
      File "/home/vagrant/varify-env/lib/python2.7/site-packages/xlrd/__init__.py", line 416, in open_workbook
        ragged_rows=ragged_rows,
      File "/home/vagrant/varify-env/lib/python2.7/site-packages/xlrd/xlsx.py", line 791, in open_workbook_2007_xml
        x12sheet.process_stream(zflo, heading)
      File "/home/vagrant/varify-env/lib/python2.7/site-packages/xlrd/xlsx.py", line 528, in own_process_stream
        self_do_row(elem)
      File "/home/vagrant/varify-env/lib/python2.7/site-packages/xlrd/xlsx.py", line 722, in do_row
        assert tvalue is not None
    AssertionError

重命名或另存為.xls(而不是.xlsx)作為Excel文件謝謝

使用pyopenxl而非xlrd表示以下格式: https ://openpyxl.readthedocs.org/en/latest/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM