You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何解决Python导入Excel 97-2003 XLS文件的格式不支持报错?

问题根源

你的文件并非真正的Excel 97-2003 XLS格式,而是被重命名为.xls的HTML文件(错误提示里的b'<html xm'已经明确显示文件开头是HTML结构),这也是xlrd、openpyxl等Excel专用库无法读取的原因。

解决方案

方案1:用pandas直接读取HTML内容

pandas的read_html方法可以直接解析这类伪装成xls的HTML表格文件,代码示例:

import pandas as pd

# 读取文件中的所有HTML表格,返回DataFrame列表
table_list = pd.read_html('KONKA_1284314_2023_4.xls')
# 取第一个表格(如果文件包含多个表格,可根据索引选择对应表格)
df = table_list[0]
# 查看数据前几行验证
print(df.head())

方案2:如果是XML结构(你提到类似XML),用XML解析库处理

如果文件实际是XML格式,可使用Python内置的xml.etree或第三方库lxml解析,再转换为DataFrame,示例代码(需根据实际XML结构调整节点路径):

import xml.etree.ElementTree as ET
import pandas as pd

# 解析XML文件
tree = ET.parse('KONKA_1284314_2023_4.xls')
root = tree.getroot()

# 提取数据(示例路径,需根据你的XML实际结构修改)
data_rows = []
for row_node in root.findall('.//row'):
    row_content = [node.text for node in row_node.findall('.//cell')]
    data_rows.append(row_content)

# 转换为DataFrame
df = pd.DataFrame(data_rows)
print(df.head())
补充说明

xlrd、openpyxl这类库仅支持标准的Excel二进制格式(.xls)和OOXML格式(.xlsx),无法识别伪装成Excel后缀的HTML/XML文件,所以必须用对应格式的解析方法处理。

内容的提问来源于stack exchange,提问作者user25043761

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.23 22:25:01