文章目录
- html_content = “”” <html> <head><title>测试表格</title></head> <body> <table border=”1″> <tr> <th>姓名</th> <th>年龄</th> <th>城市</th> </tr> <tr> <td>张三</td> <td>28</td> <td>北京</td> </tr> <tr> <td>李四</td> <td>34</td> <td>上海</td> </tr> </table> </body> </html> “””
- html_table_to_xlsx(html_content, “output.xlsx”) 执行后,会在当前目录生成一个 output.xlsx 文件,内容如下: 姓名 年龄 城市 张三 28 北京 李四 34 上海 到此这篇关于Python实现将HTML表格一键导出为Excel(xlsx)的实战指南的文章就介绍到这了,更多相关Python HTML表格导出为Excel内容请搜索风君子博客以前的文章或继续浏览下面的相关文章希望大家以后多多支持风君子博客! 您可能感兴趣的文章: Python实现将HTML表格一键导出为Excel Python借助Spire.XLS高效实现Excel到HTML的转换 利用Python实现Excel表格转换为HTML格式 利用Python将Excel快速转换成HTML的代码实现 Python实现Excel表格转HTML python pandas实现excel转为html格式的方法 python抓取某汽车网数据解析html存入excel示例
目录
- 一、实现思路
- 二、环境准备
- 三、核心代码实现
- 四、示例演示
- 示例 HTML 内容
- 调用函数导出 Excel
在数据采集、网页解析或自动化报表场景中,我们经常会遇到这样一个需求:
从 HTML 页面中提取表格数据,并导出为 Excel 文件
本文将使用 BeautifulSoup + Pandas + OpenPyXL,实现一个通用、简单、可复用的工具函数,把 HTML 中的 <table> 表格直接导出为 .xlsx 文件。
整体流程非常清晰:
- 使用 BeautifulSoup 解析 HTML
- 查找页面中所有
<table>标签 - 使用 pandas.read_html 将表格转为 DataFrame
- 使用 ExcelWriter 将多个表格写入 Excel 的不同 Sheet
安装依赖
pip install beautifulsoup4 pandas openpyxl lxml
lxml 是 pandas.read_html 推荐的解析器,性能更好。
HTML 表格导出函数
from bs4 import BeautifulSoup
import pandas as pd
def html_table_to_xlsx(html_content, output_file):
"""
将 HTML 中的表格提取并导出为 xlsx 文件。
:param html_content: HTML 文本内容
:param output_file: 导出的 xlsx 文件路径
"""
# 使用 BeautifulSoup 解析 HTML
soup = BeautifulSoup(html_content, 'html.parser')
# 查找 HTML 中的所有表格
tables = soup.find_all('table')
if not tables:
print("HTML 中没有找到表格!")
return
# 逐个解析表格并导出到 Excel
with pd.ExcelWriter(output_file, engine='openpyxl') as writer:
for i, table in enumerate(tables):
# 将 HTML table 转为 DataFrame
df = pd.read_html(str(table))[0]
# 不同表格写入不同的 sheet
sheet_name = f"Sheet{i + 1}"
df.to_excel(writer, index=False, sheet_name=sheet_name)
print(f"表格已成功导出到 {output_file}")
html_content = """
<html>
<head><title>测试表格</title></head>
<body>
<table border="1">
<tr>
<th>姓名</th>
<th>年龄</th>
<th>城市</th>
</tr>
<tr>
<td>张三</td>
<td>28</td>
<td>北京</td>
</tr>
<tr>
<td>李四</td>
<td>34</td>
<td>上海</td>
</tr>
</table>
</body>
</html>
"""
html_table_to_xlsx(html_content, "output.xlsx")
执行后,会在当前目录生成一个 output.xlsx 文件,内容如下:
| 姓名 | 年龄 | 城市 |
|---|---|---|
| 张三 | 28 | 北京 |
| 李四 | 34 | 上海 |
到此这篇关于Python实现将HTML表格一键导出为Excel(xlsx)的实战指南的文章就介绍到这了,更多相关Python HTML表格导出为Excel内容请搜索风君子博客以前的文章或继续浏览下面的相关文章希望大家以后多多支持风君子博客!
您可能感兴趣的文章:
- Python实现将HTML表格一键导出为Excel
- Python借助Spire.XLS高效实现Excel到HTML的转换
- 利用Python实现Excel表格转换为HTML格式
- 利用Python将Excel快速转换成HTML的代码实现
- Python实现Excel表格转HTML
- python pandas实现excel转为html格式的方法
- python抓取某汽车网数据解析html存入excel示例