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

如何用Python从HTML文件提取JSON数据并导出为CSV?

从本地HTML提取JSON并导出为CSV的简单Python方案

实现步骤

  • 提取HTML中的JSON内容:使用BeautifulSoup定位<pre>标签,你的JSON数据嵌套在这个标签内
  • 解析JSON数据:用Python内置的json模块把字符串转成可操作的列表字典
  • 导出为CSV:用csv模块的DictWriter快速生成带指定表头的CSV文件

完整代码

# 导入需要的模块
from bs4 import BeautifulSoup
import json
import csv

# 1. 读取本地HTML文件
with open('sample.html', 'r', encoding='utf-8') as html_file:
    html_content = html_file.read()

# 2. 解析HTML,提取pre标签里的JSON字符串
soup = BeautifulSoup(html_content, 'html.parser')
json_text = soup.find('pre').get_text(strip=True)

# 3. 把JSON字符串转成Python列表(每个元素是字典)
data_list = json.loads(json_text)

# 4. 定义需要导出的字段顺序
fields = ["SpecificIdent", "SpecificNum", "Meter", "Power", "WPower", "SNumber", "isI"]

# 5. 写入CSV文件
with open('output.csv', 'w', newline='', encoding='utf-8') as csv_file:
    # 创建DictWriter对象,指定表头
    writer = csv.DictWriter(csv_file, fieldnames=fields)
    # 写入表头
    writer.writeheader()
    # 遍历每个数据对象,处理null值后写入
    for item in data_list:
        # 把null值转为空字符串,避免CSV写入报错
        processed_item = {k: v if v is not None else '' for k, v in item.items()}
        writer.writerow(processed_item)

print("CSV文件已成功生成:output.csv")

新手操作指南

  1. 安装依赖:打开命令行执行 pip install beautifulsoup4
  2. 把代码保存为extract_json_to_csv.py,和sample.html放在同一个文件夹
  3. 运行代码:命令行执行 python extract_json_to_csv.py
  4. 查看生成的output.csv文件即可

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.01 22:25:31