PythonでのJSONからCSVへ

JSONは、構造化データを保持および共有するためによく知られ、広く使用されている形式です。多くの場合、さまざまなタイプのアプリケーション間でデータを送信するために使用されます。一方、CSVは、データをコンマ区切り形式で保存するためにも使用されます。場合によっては、JSONファイルからCSVにデータをインポートする必要があります。したがって、この記事では、Pythonを使用してプログラムでJSONデータをCSVに変換する方法を学習します。

JSONからCSVへの変換のためのPythonAPI

JSONデータをCSV形式に変換するために、Java経由のPython用Aspose.Cellsを使用します。これは、Pythonを使用してスプレッドシートファイルを作成、変更、および変換するための強力なAPIです。 APIをダウンロードするか、次のpipコマンドを使用してインストールできます。

pip install aspose-cells

JSONデータまたはファイルをCSVに変換する

以下は、Pythonを使用してJSONデータをCSV形式に変換する手順です。

  • 新しいWorkbookオブジェクトを作成します。
  • Workbook.getWorksheets().get(0)メソッドを使用して、最初のワークシートの参照を取得します。
  • JsonLayoutOptionsクラスのオブジェクトを作成して、追加のオプションを設定します。
  • JsonUtility.importData()メソッドを使用してJSONからCSVにデータをインポートします。
  • Workbook.save(string, SaveFormat.CSV)メソッドを使用してCSVファイルを保存します。

次のコードサンプルは、JSONデータをCSV形式に変換する方法を示しています。

// JSONデータをロードする
jsonInput = '[{"nodeId":1,"reputation":1134},{"nodeId":2,"reputation":547},{"nodeId":3,"reputation":1703},{"nodeId":4,"reputation":-199},{"nodeId":5,"reputation":-306},{"nodeId":6,"reputation":-49},{"nodeId":7,"reputation":1527},{"nodeId":8,"reputation":1223}]'

# create a blank Workbook object
workbook = Workbook()

# access default empty worksheet
worksheet = workbook.getWorksheets().get(0)

# set JsonLayoutOptions for formatting
layoutOptions = JsonLayoutOptions()
layoutOptions.setArrayAsTable(True)

# import JSON data to CSV
JsonUtility.importData(jsonInput, worksheet.getCells(), 0, 0, layoutOptions)

# save CSV file
workbook.save("output.csv", SaveFormat.CSV)

JSONデータ

以下は、上記のコードサンプルで使用したJSONデータです。

[{"nodeId":1,"reputation":1134},{"nodeId":2,"reputation":547},{"nodeId":3,"reputation":1703},{"nodeId":4,"reputation":-199},{"nodeId":5,"reputation":-306},{"nodeId":6,"reputation":-49},{"nodeId":7,"reputation":1527},{"nodeId":8,"reputation":1223}]'

変換されたCSV

変換されたCSVファイルは次のとおりです。

JSONからCSVへ

無料ライセンスを取得する

一時ライセンスを取得し、評価の制限なしにJava経由でPython用のAspose.Cellsを使用します。

結論

JSONファイルとCSVファイルは、データの保存と送信に広く使用されています。これに従って、この記事では、Pythonを使用してJSONデータまたはファイルをCSVに変換する方法について説明しました。さらに、ドキュメントを使用して、Java経由でPython用のAspose.Cellsを探索することもできます。また、フォーラムから質問することもできます。

関連項目