0

タイトルの種類が重複して申し訳ありません。これを達成する方法の発見と例に問題があります。Zendesk からプルしている json ファイルがあります。私は json.dumps を実行して、それを読み取り可能な形式にし、python 辞書に入れています。for ループに次のものがあるため、必要な情報だけを json ファイルから取得して csv ファイルに書き込むことができます。

for item in data['results']:
    print(
        item['id'] ,item['via']['channel'], item['via']['source']['from'], item['subject'], item['tags'],
        item['created_at'], item['status'], item['custom_fields'][12], item['custom_fields'][12]['value'],
        item['result_type'], item['priority']

このコードから、正しい情報で必要なアイテムを取得します。

これをファイルに出力するために次のことを試みましたが、ファイルに返されるのは最後のレコードだけです

import csv

with open('file.txt', 'w') as file:

csv_app = csv.writer(file)
for item in python_data['results']:
    csv_app.writerows(item['id'], item['via']['channel'],item['via']['source']['from'],item['subject'], item['tags'],
           item['created_at'], item['status'], item['custom_fields'][12], item['custom_fields'][12]['value'],
           item['priority'], item['result_type'])

すべてを取得する方法についていくつかの提案をしたいと思います(私はたくさんのものを試しました)また、 私が取り出したアイテム['via'] ['source'] ['from'] ['name']がありますそこに値がない場合にエラーが発生するためです。フィールドごとにこれを処理する方法 if 条件を想定しています。

ヘルプや正しい方向への指示は大歓迎です。

前もって感謝します。

4

1 に答える 1