nsaizl 发表于 2023-2-7 21:00:28

pandas read_excel读取很老的xls文件乱码

import pandas as pd

print(pd.read_excel('分析表.xls' , engine='xlrd'))

由于是很老的系统生成的xls了,用excel打开没有问题,用pandas打开就报错,指定engine之后能够读出来。但是很多乱码。
xlrd的版本是1.2.0
运行后的信息:
*** No CODEPAGE record, no encoding_override: will use 'iso-8859-1'
   ×éÖ¯|±àÂë               ×éÖ¯|Ãû³Æ...ÍŹº|²»º¬Ë°Ã«Àû ÍŹº|ëÀûÂÊ(%)
0    3212145Ì©Öݾ¸½­Í¨½­Â·Õ¾±ãÀûµê...         334.13          55.18
1    3212145Ì©Öݾ¸½­Í¨½­Â·Õ¾±ãÀûµê...         726.52          48.75

用excel打开之后直接保存,再用pandas打开就没有问题。

尝试过用xlutils.copy复制另存为之后再读取也没成功

各路大神能够直接用pandas读取到数据吗?或者调用excel使文件保存后再读取?
文件在附件里面

isdkz 发表于 2023-2-7 21:00:29

本帖最后由 isdkz 于 2023-2-7 21:44 编辑

import xlrd
import pandas as pd

wb = xlrd.open_workbook('分析表.xls', encoding_override='gbk')
df = pd.read_excel(wb)
print(df)

nsaizl 发表于 2023-2-7 21:40:40

isdkz 发表于 2023-2-7 21:24
print(df)

NB,用这个一参数就解决了{:10_275:}
页: [1]
查看完整版本: pandas read_excel读取很老的xls文件乱码