python - 将多个 json 文件转换为单个 csv 文件
问题描述
我有数千个 json 文件,我需要将它们组合成一个 csv 文件。示例 json 文件:https ://www.codepile.net/pile/dZGybzwy
我正在尝试使用 python 脚本来执行此操作,因为我将使用以下结构将 json 文件集保存在单独的文件夹中:/Saved/09_24_2020_15_05_5_Town03/targets、/Saved/09_22_2020_15_58_8_Town03/targets 等(json 文件是位于目标文件夹中)并且想使用一个标志来选择我需要来自哪个文件夹的 json 文件。
我提到了此处已经提出的类似问题,例如将 json 文件保存到一个 csv并将多个 .txt 文件转换为单个 .csv 文件(python),但我遇到的问题是创建的 .csv 文件确实没有任何 json 文件的内容。我还希望 csv 文件与 Saved 中的父文件夹同名,例如 09_24_2020_15_05_5_Town03.csv
这是我写的代码:
import pandas as pd
import json
import csv
import argparse
import os
import os.path
from carlahelp.filehelp import read_json
df = pd.DataFrame()
for file in os.listdir('Saved/'):
if file.endswith('.json'):
frame=pd.read_json(...)
df = df.append(frame, ignore_index=True)
if __name__=="__main__":
data_dir = 'Saved/'
all_recordings = os.listdir(data_dir)
if len(all_recordings)==0:
print("No recordings found in Saved/ folder")
exit()
parser = argparse.ArgumentParser()
#default to latest recording if none specified
parser.add_argument('-r', '--recording', type=str, default=all_recordings[-1])
args = parser.parse_args()
print("Saving to csv {} from {}")
df.to_csv(os.path.join(data_dir,args.recording+'.csv'))
我正在使用 Ubuntu 18。非常感谢任何帮助和建议 :) 谢谢!
解决方案
推荐阅读
- java - 个人身份证生成器
- javascript - 在 Javascript 中构建相互依赖的功能标志
- amazon-web-services - 当团队成员将 APIG 部署到特定阶段时,使用 SNS 触发 Lambda/通知
- python - 我可以从 Scrapy 中的自定义 Spider 继承吗?
- git - Git stash apply - git 在申请之前会尝试合并吗?
- node.js - NodeJS 需要多个脚本同步执行
- webots - Webots Sim“就绪”信号
- node.js - Mongo Atlas 中没有创建集合
- javascript - 在 JS 中比较单个数组项的最有效方法
- selenium - 运行硒后窗口一直关闭