JSON形式のファイルは見にくい。CSVやEXCELに変換したい。の悩みを解決する方法をシェアします。
本稿ではPythonを用いたPythonをもちいたJsonファイルの変換方法と、WEBベースでできる変換ツールをご紹介いたします。
#方法1:Pythonを用いて変換する
使い方は非常に簡単です。
###1.変換したいJsonファイルと、Pythonファイルを同じファイル階層に置く。
###2.下記プログラムの中で、3箇所を変更してください。
- プログラム中の『変換したいJsonファイル名』のところを1で置いたJsonファイル名に変更してください。
- Jsonファイルの最初に書いてある単語を『Jsonファイルを開いたときに一番最初に書いてある単語』に入れてください。
{"results":[{"acl":{"*":{"read":true,・・・
のようにJsonファイルが始まっていたら、今回の場合は『results』を入れてください。 - プログラムの中の『出力したいファイル名』のところを出力したいファイル名に変更してください。
ConvertJsonToCsv.py
#-*-coding:utf-8-*-
################################################
#目的 :JsonファイルをCSVに変換する。
################################################
import json
import csv
# JSONファイルのロード
json_dict = json.load(open('変換したいJsonファイル名.json', 'r', encoding="utf_8_sig"))
# list of dictの抽出
target_dicts = json_dict['Jsonファイルを開いたときに一番最初に書いてある単語']
with open('出力したいファイル名.csv', 'w', encoding="utf_8_sig") as f:
# dialectの登録
csv.register_dialect('dialect01', doublequote=True, quoting=csv.QUOTE_ALL)
# DictWriter作成
writer = csv.DictWriter(f, fieldnames=target_dicts[0].keys(), dialect='dialect01')
# CSVへの書き込み
writer.writeheader()
for target_dict in target_dicts:
writer.writerow(target_dict)
#方法2:WEBサービスを用いて変換する。
ファイルをサーバーに送信することが問題ないファイルだったらこちらの方法を用いたほうが、簡単だと思います。
####リンク
JsonファイルをオンラインでCSVに変換できるWEBサービス