【问题标题】:pandas reading excel results in "not a zip file"熊猫读取 excel 导致“不是 zip 文件”
【发布时间】:2020-12-15 04:57:36
【问题描述】:

我尝试将 xlsx 读入数据框:

itut_ir = pd.read_excel('C:\\Users\\Administrator\\Downloads\\reportdata.xlsx')

print(itut_ir.to_string())

我收到这个:

Traceback(最近一次调用最后一次): 文件 "C:\Users\Administrator\eclipse-workspace\Reports\GOW\Report.py", 第 44 行,在 df = pd.read_excel('C:\Users\Administrator\Downloads\reportdata.xlsx')
文件 "C:\Users\Administrator\AppData\Local\Programs\Python\Python37\lib\site-packages\pandas\io\excel_base.py", 第 304 行,在 read_excel 中 io = ExcelFile(io, engine=engine) 文件 "C:\Users\Administrator\AppData\Local\Programs\Python\Python37\lib\site-packages\pandas\io\excel_base.py", 第 824 行,在 init 中 self._reader = self.enginesengine 文件“C:\Users\Administrator\AppData\Local\Programs\Python\Python37\lib\site-packages\pandas\io\excel_xlrd.py”, 第 21 行,在 init 中 super().init(filepath_or_buffer) 文件 "C:\Users\Administrator\AppData\Local\Programs\Python\Python37\lib\site-packages\pandas\io\excel_base.py", 第 353 行,在 init 中 self.book = self.load_workbook(filepath_or_buffer) 文件 "C:\Users\Administrator\AppData\Local\Programs\Python\Python37\lib\site-packages\pandas\io\excel_xlrd.py", 第 36 行,在 load_workbook 中 返回 open_workbook(filepath_or_buffer) 文件 "C:\Users\Administrator\AppData\Local\Programs\Python\Python37\lib\site-packages\xlrd_init.py", 第 117 行,在 open_workbook 中 zf = zipfile.ZipFile(filename) 文件 "C:\Users\Administrator\AppData\Local\Programs\Python\Python37\lib\zipfile.py", 第 1222 行,在 init 中 self._RealGetContents() 文件 "C:\Users\Administrator\AppData\Local\Programs\Python\Python37\lib\zipfile.py", 第 1289 行,在 _RealGetContents raise BadZipFile("File is not a zip file") zipfile.BadZipFile: File is not a zip file

有人有想法吗?文件似乎没有损坏,我可以用 Excel 打开它。

谢谢!

*** 更新 *** 正在从 FTP 下载产生错误的文件。打开原始文件有效......如果这给你一个提示:)谢谢

【问题讨论】:

  • 不需要使用open,只需要文件的路径即可。试试看:pd.read_excel('C:\\Users\\Administrator\\Downloads\\reportdata.xlsx', sheet_name='Details', skiprows=4)
  • 抱歉,我被另一个错误误导了。分解导入我仍然得到 zip 错误: itut_ir = pd.read_excel('C:\\Users\\Administrator\\Downloads\\reportdata.xlsx')
  • reportdata.xlsx 是原始文件吗?关于this question 打开和保存文件可能会有所帮助。
  • 您好,正在从 FTP 服务器下载文件。我可以通过excel打开它。不知道你的意思是打开和保存谢谢
  • xlsx基本上是一个zip文件,所以下载的时候很有可能是文件坏了。

标签: python excel pandas


【解决方案1】:

不久前,我在 LibreOffice 中创建的 XLSX 也遇到了同样的问题。

解决方案是检查 XLSX 以确保它没有损坏。就我而言,加载以前版本的 XLSX 文件可以解决问题。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-01-26
    • 2017-06-03
    • 2020-02-10
    • 2021-05-27
    • 2019-03-31
    • 2020-04-17
    相关资源
    最近更新 更多