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

如何将嵌套JSON的tags子字段导出为CSV独立列?

解决嵌套JSON转CSV时拆分tags字段的问题

直接给你可落地的步骤和代码:

  1. 获取API数据
    先用Invoke-RestMethod拿到目标数据,示例调用如下:

    $apiData = Invoke-RestMethod -Uri "https://your-third-party-api.com/target-data" -Method Get
    
  2. 拆分嵌套的tags字段为顶层属性
    遍历每条数据,把tags里指定的字段提取出来,和原有顶层字段组合成新的自定义对象:

    $processedData = $apiData | ForEach-Object {
        [PSCustomObject]@{
            name             = $_.name
            location         = $_.location
            id               = $_.id
            timestamp_utc    = $_.timestamp_utc
            '24/7 procedure' = $_.tags.'24/7 procedure'  # 带特殊字符的键需用引号包裹
            Country          = $_.tags.Country
            Environment      = $_.tags.Environment
            ITSystemCode     = $_.tags.ITSystemCode
        }
    }
    

    如果部分数据可能缺失某个tags字段,可提前做空值兼容:

    • PowerShell 7+ 用空合并运算符简化:$_.tags.'24/7 procedure' ?? ''
    • PowerShell 5.1 用条件判断兜底:if ($_.tags.PSObject.Properties.Name -contains '24/7 procedure') { $_.tags.'24/7 procedure' } else { '' }
  3. 导出为CSV文件
    处理完成的数据直接导出,添加-NoTypeInformation避免生成多余的类型头:

    $processedData | Export-Csv -Path "output.csv" -NoTypeInformation -Encoding UTF8
    

补充说明

直接导出时tags显示为整体内容,是因为Export-Csv会将嵌套对象直接转换为字符串格式(比如@{24/7 procedure=Yes; Country=US...}),只有把嵌套字段提取为顶层属性,才能在CSV中生成独立列。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.14 10:42:42