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

如何将嵌套JSON转换为CSV?Python层级展开问题求助

层级JSON转CSV实现(Python)

问题分析

你的JSON数据存在多层嵌套结构:顶层sites数组包含门店对象,每个门店的siteTraffic下的traffic数组才是具体的客流量记录。要生成目标CSV,需要把门店ID和每条流量记录关联,同时补充日期字段(示例中JSON未包含日期,需根据实际来源补充)。

代码实现

下面是直接可用的Python代码,适配你的数据结构:

import json
import csv

# 示例JSON数据(实际可从文件读取:with open('data.json', 'r') as f: data = json.load(f))
data = {
  "sites": [
    {
      "storeID": "Store 1",
      "siteTraffic": [
        {
          "traffic": [
            {
              "startTime": "000000",
              "enters": "1",
              "exits": "6",
              "code": "02"
            },
            {
              "startTime": "010000",
              "enters": "4",
              "exits": "2",
              "code": "02"
            }
          ]
        }
      ]
    }
  ]
}

# 目标CSV字段
csv_fields = ["Date", "Store ID", "Traffic Start Time", "Enters", "Exits", "Code"]
# 假设日期固定为26/09/2023,若JSON中有日期字段可替换为对应取值逻辑
target_date = "26/09/2023"

# 写入CSV
with open('store_traffic.csv', 'w', newline='', encoding='utf-8') as csvfile:
    writer = csv.DictWriter(csvfile, fieldnames=csv_fields)
    writer.writeheader()
    
    # 遍历每个门店
    for site in data["sites"]:
        store_id = site["storeID"]
        # 遍历门店下的流量记录(注意siteTraffic是数组,取第一个元素的traffic数组)
        for traffic_item in site["siteTraffic"][0]["traffic"]:
            # 构造CSV行数据
            csv_row = {
                "Date": target_date,
                "Store ID": store_id,
                "Traffic Start Time": traffic_item["startTime"],
                "Enters": traffic_item["enters"],
                "Exits": traffic_item["exits"],
                "Code": traffic_item["code"]
            }
            writer.writerow(csv_row)

关键说明

  1. 层级遍历逻辑:必须确保每条流量记录和所属门店ID绑定,这是直接用flatten函数容易出错的地方——通用flatten工具可能无法保留这种跨层级的关联关系。
  2. 日期字段:示例中JSON未包含日期,代码里用固定值代替。如果日期来自JSON的某个层级(比如每个门店或每条记录带日期),只需修改target_date的取值逻辑即可。
  3. 扩展性:如果sites下有多个门店,或者siteTraffic包含多个元素,代码会自动遍历所有数据,无需额外修改。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.10 00:30:09