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

如何提取~/json-reports/下JSON内容及文件名字段导出为Excel/CSV

实现JSON批量合并提取字段导出CSV/Excel方案

前置依赖

需要先安装Python的两个第三方库:

pip install pandas openpyxl

完整实现代码

import os
import json
import pandas as pd

# 配置参数
JSON_DIR = os.path.expanduser("~/json-reports/")
EXPORT_CSV_PATH = "./output.csv"
EXPORT_EXCEL_PATH = "./output.xlsx"

all_data = []

# 遍历目录下所有JSON文件
for filename in os.listdir(JSON_DIR):
    if not filename.endswith(".json"):
        continue
    # 提取文件名中的port和user-id
    file_prefix = filename.rsplit(".", 1)[0]
    port, user_id = file_prefix.split("-", 1)
    # 读取JSON文件内容
    file_path = os.path.join(JSON_DIR, filename)
    with open(file_path, "r", encoding="utf-8") as f:
        json_content = json.load(f)
    # 给每条记录增加提取的字段
    for item in json_content:
        item["port"] = port
        item["user-id"] = user_id
        all_data.append(item)

# 转换为DataFrame
df = pd.DataFrame(all_data)

# 导出为CSV
df.to_csv(EXPORT_CSV_PATH, index=False, encoding="utf-8-sig")
# 导出为Excel(二选一即可)
df.to_excel(EXPORT_EXCEL_PATH, index=False)

print(f"导出完成,共处理{len(all_data)}条记录")

代码说明

  • 文件名分割采用split("-", 1)的写法,避免user-id本身包含-的场景下分割错误
  • CSV导出使用utf-8-sig编码,兼容Windows下Excel打开不乱码
  • 如果你只需要导出其中一种格式,删除不需要的导出代码行即可
  • 如果你的JSON文件存在非标准格式,可在读取JSON的部分增加异常捕获逻辑,跳过损坏的文件

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.09 20:54:03