问题背景:

工作中大部使用Pandas分处理的数据都是以csv后缀结尾的文件,但是突然换成xlsx后缀的表格之后,出现的一些错误。

问题现象:

        XLRDError: Excel xlsx file; not supported

/usr/local/lib/python3.6/site-packages/xlrd/__init__.py in open_workbook(filename, logfile, verbosity, use_mmap, file_contents, encoding_override, formatting_info, on_demand, ragged_rows, ignore_workbook_corruption)168     # files that xlrd can parse don't start with the expected signature.169     if file_format and file_format != 'xls':
--> 170         raise XLRDError(FILE_FORMAT_DESCRIPTIONS[file_format]+'; not supported')171 172     bk = open_workbook_xls(XLRDError: Excel xlsx file; not supported
import pandas as pd
PATH = '/tmp/MSD0921.xlsx'
dataframe = pd.read_excel(PATH, engine=None)

查看源码:

在pandas的base.py文件的ExcelFile类下边有这么一段描述,大概在1117-1127行。

engine : str, default NoneIf io is not a buffer or path, this must be set to identify io.Supported engines: ``xlrd``, ``openpyxl``, ``odf``, ``pyxlsb``Engine compatibility :- ``xlrd`` supports old-style Excel files (.xls).- ``openpyxl`` supports newer Excel file formats.- ``odf`` supports OpenDocument file formats (.odf, .ods, .odt).- ``pyxlsb`` supports Binary Excel files... versionchanged:: 1.2.0The engine `xlrd <https://xlrd.readthedocs.io/en/latest/>`_now only supports old-style ``.xls`` files.When ``engine=None``, the following logic will beused to determine the engine:

源码解读:

大概的意思是,pandas 读取excel表格只支持这四种引擎,xlrd,openpyxl,odf,pyxlsb如果不是这四种就会抛出异常。如果engine=None的话,默认的就是xlrd引擎,只支持老式的Excel文件,.xls后缀的

代码修改:

只需要将引擎换成 openpyxl即可

import pandas as pd
PATH = '/tmp/MSD0921.xlsx'
dataframe = pd.read_excel(PATH,engine='openpyxl')

总结:关于第三方库代码的问题,要学去看源码,分析问题所在,大部分问题都能够解决

Pandas读取Excel文件XLRDError: Excel xlsx file; not supported相关推荐

  1. 解决pandas报错:XLRDError: Excel xlsx file; not supported

    用pandas读xlsx文件时报错: /usr/python3/lib/python3.8/site-packages/xlrd/__init__.py in open_workbook(filena ...

  2. R读取excel文件乱码 read.xlsx() 解决方法

    1. 参考[R语言]R读取含中文excel文件,read.xlsx乱码问题  该文章总结得很好,可以直接跳到最后看博主的总结. 2. 如果依旧是乱码那么用read.xlsx2()去读取excel文件, ...

  3. Java读取txt文件、excel文件的方法

    Java读取txt文件.excel文件的方法 1.读取txt文件 public static String getFileContent(String filePath,String charset) ...

  4. python读取json文件转成excel_Python实现读取json文件到excel表

    这篇文章主要介绍了Python实现读取json文件到excel表,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 本文实例为大家分享了Python实现读取json文件到excel表,供大家参考,具体 ...

  5. pandas读取csv、txt和xlsx文件

    一.pandas读取csv文件 import pandas as pd data = pd.read_csv('文件路径/文件名.csv', header = None, sep =',') head ...

  6. python pandas读取csv文件指定行_python pandas获取csv指定行 列的操作方法

    python pandas获取csv指定行 列的操作方法 pandas获取csv指定行,列 house_info = pd.read_csv('house_info.csv') 1:取行的操作: ho ...

  7. pandas读取csv文件的前几行数据(nrows参数)、pandas读取csv文件的中间几行数据(skiprows=range(a,b))

    pandas读取csv文件的前几行数据(nrows参数).pandas读取csv文件的中间几行数据(skiprows=range(a,b)) 目录 pandas读取csv文件的前几行数据.pandas ...

  8. pandas读取csv文件发生编码(encoding)错误:获取文件编码格式之后再读取文件

    pandas读取csv文件发生编码(encoding)错误:获取文件编码格式之后再读取文件 目录

  9. pandas读取大文件(chunksize)并通过sqlalchemy写入MySQL数据库

    pandas读取大文件(chunksize)并通过sqlalchemy写入MySQL数据库 在pandas中读取表类文件的时候有一个参数chunksize,只要指定了这个参数的数值,那么得到的结果就不 ...

最新文章

  1. connect函数介绍
  2. 【机器学习PAI实践九】如何通过机器学习实现云端实时心脏状况监测
  3. 【星球知识卡片】注意力机制发展如何了,如何学习它在各类任务中的应用?...
  4. VMware vSphere 服务器虚拟化之十七 桌面虚拟化之安装View链接服务器
  5. 抖音gorgon算法04php,抖音xgorgon(0401)获取方法及演示
  6. 简练软考知识点整理-项目启动过程组
  7. flash as3与后台php交互用户注册例子,as3与PHP后台交互2
  8. SpringBoot2.0 基础案例(13):基于Cache注解模式,管理Redis缓存
  9. PHP安全之Web攻击
  10. python将excel数据批量导入sqlserver数据库
  11. Matlab中批读取DCM文件
  12. des加密 lua_lua des加密解密 各种加密解密函数 - 奇闻 - 91文库
  13. 【K线绘图】教你用python绘制带有买卖点的股票K线图(附送鳄鱼指标、顾比均线指标、dataframe格式化输出)
  14. html设置label的字体大小,swift - label 的font 设置 文字字体和大小
  15. c/c++静态变量和静态函数
  16. 鸡兔同笼python
  17. ai智能写作如何快速写文?
  18. 如何使用SFC / SCANNOW修复Windows系统文件
  19. Android使用NFC模拟M卡实现 (二)
  20. sama5d3 环境检测 gpio--yx测试

热门文章

  1. spark core、spark sql、spark streaming 联系与区别
  2. Nervos 与 Cardano 跨链桥的最新进展
  3. android keyevent列表,Android KeyEvent KeyCode 原生安卓代码对照表
  4. VC(VISUAL_C++)虚拟键VK值列表
  5. 新“章鱼保罗”预测出了2018年世界杯冠军?!
  6. 知不知道什么叫米筐量化?怎么来的?
  7. 小宫女唐奕霖身份确认是某传媒公司董事长
  8. java 多线程参数及说明
  9. 重磅!保姆级教程:个人深度学习工作站配置指南
  10. matlab 灰度共生矩阵熵,图像的灰度共生矩阵GLCM(matlab 函数帮助).