Azure Databricks读取xlsx文件报XLRDError等错误如何解决?
问题解决步骤
1. 优先排查库安装生效状态
- 你在集群安装openpyxl后,必须重启集群才能让新安装的库生效,未重启会导致pandas无法识别到已安装的openpyxl
- 重启后先运行代码验证openpyxl是否正常可用:
import openpyxl print(openpyxl.__version__)
如果运行报错说明openpyxl安装失败,需要重新在集群的库管理界面安装,或者直接在notebook中用命令安装:
%pip install openpyxl # 运行后按提示重启当前notebook的内核即可,不需要重启整个集群
2. 验证pandas版本兼容性
运行代码查看当前pandas版本:
import pandas as pd print(pd.__version__)
- 如果版本低于1.1.0,需要升级pandas:
%pip install pandas>=1.1.0 openpyxl # 重启内核后生效
升级完成后再运行你的读取代码即可正常执行:
from io import BytesIO df = pd.read_excel(BytesIO(orig), engine='openpyxl')
3. 替代方案(不升级组件的情况)
如果不想升级pandas和安装openpyxl,可以直接降级xlrd到支持xlsx的最后一个版本1.2.0:
%pip install xlrd==1.2.0 # 重启内核后不需要指定engine,直接运行原代码即可 df = pd.read_excel(BytesIO(orig))
内容的提问来源于stack exchange,提问作者jukebox
相关产品推荐
相关产品推荐

