1 报错
报错信息如下:
1 | xlrd.biffh.XLRDError: Excel xlsx file; not supported |
2 解决
2.1 调低xlrd版本(推荐)
xlrd过高,卸载旧版本重新安装1.2.0:
版本 | 支持 |
---|---|
xlrd 1.2 | 支持 .xls 、 .xlsx 文件 |
xlrd 2.0 | 只支持.xls文件 |
在cmd中执行:
1 | pip uninstall xlrd |
再运行代码出现下面的报错:
1 | AttributeError: 'ElementTree' object has no attribute 'getiterator' |
在新版python3.9中,windows中使用的更新删除了getiterator方法,所以我们老版本的xlrd库调用getiterator方法时会报错。
- 找出Python安装目录
python\Lib\site-packages\xlrd
下的xlsx.py
文件; - 如果找不到文件地址,可以在 cmd 输入
pip show xlrd
即可找到xlrd的文件地址; - 将两个地方的
getiterator()
改成iter()
; - 然后重新载入程序就解决了。
2.2 调低excel版本
excel文件的版本过高,复制源文件,另存为:xls格式。