如何将HTM文件转换为Excel表格

来源:IPIPP.com作者:头衔:全栈工程师
导读:本期聚焦于小伙伴创作的《如何将HTM文件转换为Excel表格》,敬请观看详情,探索知识的价值。以下视频、文章将为您系统阐述其核心内容与价值。如果您觉得《如何将HTM文件转换为Excel表格》有用,将其分享出去将是对创作者最好的鼓励。

HTM是网页常用的超文本标记文件格式,很多时候我们从网页导出的数据会以HTM形式保存,想要进一步分析处理就需要把这些数据转成Excel表格。不同结构的HTM文件适合不同的转换方式,下面会逐一介绍可行的方案。

如何将HTM文件转换为Excel表格

方法一:Excel直接打开HTM文件

如果HTM文件里主要是规整的表格数据,不需要额外处理,用Excel直接打开是最简单的方式,操作步骤如下:

  • 打开Excel软件,点击左上角的文件选项,选择打开
  • 在文件类型下拉框中选择所有文件或者网页文件
  • 找到需要转换的HTM文件,点击打开,Excel会自动解析文件里的表格内容
  • 确认数据无误后,点击文件另存为,选择Excel工作簿格式保存即可

这种方式适合结构简单的HTM文件,但是遇到嵌套复杂、包含大量非表格内容的HTM时,解析出来的数据可能会错乱。

方法二:用Python脚本批量转换HTM到Excel

如果需要处理多个HTM文件,或者HTM结构比较复杂,用Python编写自动化脚本会更高效,这里需要用到lxml库解析HTML,openpyxl库操作Excel。

环境准备

首先安装需要的依赖库,在命令行执行下面的命令:

pip install lxml openpyxl

转换脚本实现

下面的脚本可以提取HTM文件里所有表格的数据,写入到Excel的不同工作表中:

from lxml import etree
from openpyxl import Workbook

def htm_to_excel(htm_path, excel_path):
    # 读取HTM文件内容
    with open(htm_path, 'r', encoding='utf-8') as f:
        content = f.read()
    # 解析HTML内容
    html = etree.HTML(content)
    # 提取所有表格元素
    tables = html.xpath('//table')
    # 创建Excel工作簿
    wb = Workbook()
    # 移除默认创建的空白工作表
    wb.remove(wb.active)
    # 遍历每个表格,写入Excel
    for idx, table in enumerate(tables, 1):
        # 创建新的工作表,命名为表格1、表格2...
        ws = wb.create_sheet(title=f'表格{idx}')
        # 提取表格所有行
        rows = table.xpath('.//tr')
        for row in rows:
            # 提取行内的单元格,包含th和td
            cells = row.xpath('.//th|.//td')
            # 获取单元格文本内容,处理空值
            row_data = [cell.text.strip() if cell.text else '' for cell in cells]
            # 写入当前行数据
            ws.append(row_data)
    # 保存Excel文件
    wb.save(excel_path)
    print(f'转换完成,文件已保存至{excel_path}')

if __name__ == '__main__':
    # 替换为你的HTM文件路径和输出的Excel路径
    htm_path = 'test.htm'
    excel_path = 'output.xlsx'
    htm_to_excel(htm_path, excel_path)

脚本说明

脚本中使用<table>标签定位HTM里的表格,用XPath提取行和单元格数据。如果HTM里的表格有合并单元格的情况,上面的脚本可能无法正确识别,需要额外添加合并单元格的处理逻辑,根据rowspancolspan属性调整数据写入的位置。

转换注意事项

  • HTM文件的编码需要确认,如果打开出现乱码,把脚本里的encoding参数改成对应的编码格式,比如gbk
  • 如果HTM里有特殊字符,比如&、<、>,解析的时候lxml库会自动处理,不需要额外操作
  • 转换完成后建议核对前几行数据,确认没有漏数据或者数据错位的情况
如果HTM文件是从特定系统导出的,可能包含隐藏的样式标签或者脚本内容,手动转换前可以先打开HTM文件查看结构,确认表格数据的位置再选择对应的转换方式。

HTM转ExcelHTML表格解析XPathPythonopenpyxl修改时间:2026-06-03 21:57:43

免责声明:​ 已尽一切努力确保本网站所含信息的准确性。网站内容多为原创整理与精心编撰,观点力求客观中立。本站旨在免费分享,内容仅供个人学习、研究或参考使用。若引用了第三方作品,版权归原作者所有。如内容涉及您的权益,请联系我们处理。
内容垂直聚焦
专注技术核心技术栏目,确保每篇文章深度聚焦于实用技能。从代码技巧到架构设计,为用户提供无干扰的纯技术知识沉淀,精准满足专业提升需求。
知识结构清晰
覆盖从开发到部署的全链路。AI、前端、编程、数据库、服务器、建站、系统层层递进,构建清晰学习路径,帮助用户系统化掌握开发与运维所需的核心技术。
深度技术解析
拒绝泛泛而谈,深入技术细节与实践难点。无论是数据库优化还是服务器配置,均结合真实场景与代码示例进行剖析,致力于提供可直接应用于工作的解决方案。
专业领域覆盖
精准对应开发生命周期。从前端界面到后端编程,从数据库操作到服务器运维,形成完整闭环,一站式满足全栈工程师和运维人员的技术需求。
即学即用高效
内容强调实操性,步骤清晰、代码完整。用户可根据教程直接复现和应用于自身项目,显著缩短从学习到实践的距离,快速解决开发中的具体问题。
持续更新保障
专注既定技术方向进行长期、稳定的内容输出。确保各栏目技术文章持续更新迭代,紧跟主流技术发展趋势,为用户提供经久不衰的学习价值。