读取GitHub上的xlsx文件出现XLRDError: Expected BOF record报错如何解决?
问题原因
- 你当前使用的URL是GitHub的文件预览页面地址,请求后返回的是HTML网页内容,不是真实的.xlsx二进制文件。报错信息里的
<!就是HTML文件的开头标识,和Excel文件的格式不匹配,因此触发格式不支持的错误。
解决方法
把URL里的blob替换为raw,就能拿到原始Excel文件的下载地址,修改后的代码如下:
import pandas as pd import requests as rq import io put_k_ses = 'https://github.com/valeriigamaley/Kosh-Agach-SPS-MLDS/raw/024eb349c40174edbcd55e09e70f7fbc685c8ca6/GenInsolKoshAgachSPS.xlsx' data1 = rq.get(put_k_ses).content dannye_gener = pd.read_excel(io.BytesIO(data1)) print(dannye_gener)
可选验证步骤
- 你可以在请求后先打印返回内容的前100个字符,确认返回的不是HTML内容:
print(data1[:100])
如果输出内容里没有<html、<!DOCTYPE这类字符,就说明拿到了正确的Excel文件。
内容的提问来源于stack exchange,提问作者Валерий Гамалей
相关产品推荐
相关产品推荐

