Pandas读取Excel文件XLRDError: Excel xlsx file; not supported
问题背景:
工作中大部使用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相关推荐
- 解决pandas报错:XLRDError: Excel xlsx file; not supported
用pandas读xlsx文件时报错: /usr/python3/lib/python3.8/site-packages/xlrd/__init__.py in open_workbook(filena ...
- R读取excel文件乱码 read.xlsx() 解决方法
1. 参考[R语言]R读取含中文excel文件,read.xlsx乱码问题 该文章总结得很好,可以直接跳到最后看博主的总结. 2. 如果依旧是乱码那么用read.xlsx2()去读取excel文件, ...
- Java读取txt文件、excel文件的方法
Java读取txt文件.excel文件的方法 1.读取txt文件 public static String getFileContent(String filePath,String charset) ...
- python读取json文件转成excel_Python实现读取json文件到excel表
这篇文章主要介绍了Python实现读取json文件到excel表,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 本文实例为大家分享了Python实现读取json文件到excel表,供大家参考,具体 ...
- pandas读取csv、txt和xlsx文件
一.pandas读取csv文件 import pandas as pd data = pd.read_csv('文件路径/文件名.csv', header = None, sep =',') head ...
- python pandas读取csv文件指定行_python pandas获取csv指定行 列的操作方法
python pandas获取csv指定行 列的操作方法 pandas获取csv指定行,列 house_info = pd.read_csv('house_info.csv') 1:取行的操作: ho ...
- pandas读取csv文件的前几行数据(nrows参数)、pandas读取csv文件的中间几行数据(skiprows=range(a,b))
pandas读取csv文件的前几行数据(nrows参数).pandas读取csv文件的中间几行数据(skiprows=range(a,b)) 目录 pandas读取csv文件的前几行数据.pandas ...
- pandas读取csv文件发生编码(encoding)错误:获取文件编码格式之后再读取文件
pandas读取csv文件发生编码(encoding)错误:获取文件编码格式之后再读取文件 目录
- pandas读取大文件(chunksize)并通过sqlalchemy写入MySQL数据库
pandas读取大文件(chunksize)并通过sqlalchemy写入MySQL数据库 在pandas中读取表类文件的时候有一个参数chunksize,只要指定了这个参数的数值,那么得到的结果就不 ...
最新文章
- connect函数介绍
- 【机器学习PAI实践九】如何通过机器学习实现云端实时心脏状况监测
- 【星球知识卡片】注意力机制发展如何了,如何学习它在各类任务中的应用?...
- VMware vSphere 服务器虚拟化之十七 桌面虚拟化之安装View链接服务器
- 抖音gorgon算法04php,抖音xgorgon(0401)获取方法及演示
- 简练软考知识点整理-项目启动过程组
- flash as3与后台php交互用户注册例子,as3与PHP后台交互2
- SpringBoot2.0 基础案例(13):基于Cache注解模式,管理Redis缓存
- PHP安全之Web攻击
- python将excel数据批量导入sqlserver数据库
- Matlab中批读取DCM文件
- des加密 lua_lua des加密解密 各种加密解密函数 - 奇闻 - 91文库
- 【K线绘图】教你用python绘制带有买卖点的股票K线图(附送鳄鱼指标、顾比均线指标、dataframe格式化输出)
- html设置label的字体大小,swift - label 的font 设置 文字字体和大小
- c/c++静态变量和静态函数
- 鸡兔同笼python
- ai智能写作如何快速写文?
- 如何使用SFC / SCANNOW修复Windows系统文件
- Android使用NFC模拟M卡实现 (二)
- sama5d3 环境检测 gpio--yx测试
热门文章
- spark core、spark sql、spark streaming 联系与区别
- Nervos 与 Cardano 跨链桥的最新进展
- android keyevent列表,Android KeyEvent KeyCode 原生安卓代码对照表
- VC(VISUAL_C++)虚拟键VK值列表
- 新“章鱼保罗”预测出了2018年世界杯冠军?!
- 知不知道什么叫米筐量化?怎么来的?
- 小宫女唐奕霖身份确认是某传媒公司董事长
- java 多线程参数及说明
- 重磅!保姆级教程:个人深度学习工作站配置指南
- matlab 灰度共生矩阵熵,图像的灰度共生矩阵GLCM(matlab 函数帮助).