Я - питон noob и работаю с Plaid API для получения банковских транзакций. Я бы хотел, чтобы каждая транзакция была собственной линией, и я хочу только вытащить четыре значения за запись: дату, _account, имя & сумму и заполнить CSV-файл этими данными. У меня есть код ниже, который заполняет одну строку CSV (файл JSON также прилагается). Я не могу понять, что я ищу, насколько примеры о том, как это сделать после немного Googling. Буду признателен за любую оказанную помощь.JSON Single Line Parse to Multi-Line CSV с Python
import csv
#Configuration
from plaid import Client
Client.config({
'url': 'https://api.plaid.com'
})
#Connect to Plaid
from plaid import Client
from plaid import errors as plaid_errors
from plaid.utils import json
client = Client(client_id='test_id', secret='test_secret')
account_type = 'suntrust'
try:
response = client.connect(account_type, {
'username': 'plaid_test',
'password': 'plaid_good'
})
except plaid_errors.PlaidError:
pass
else:
connect_data = response.json()
#Get transactions from Plaid
response = client.connect_get()
transactions = response.json()
#Save the transactions JSON response to a csv file in the Python Projects directory
with open('transactions.csv', 'w') as outfile:
json.dump(transactions, outfile)
csvfile = open('transactions.csv', 'r')
jsonfile = open('transactions.json', 'w')
fieldnames = ("date", "_account","name","amount")
reader = csv.DictReader(csvfile, fieldnames)
for row in reader:
json.dump(row, jsonfile)
jsonfile.write('\n')
В чем Ваш вопрос? –
Взгляните на класс [DictWriter] (https://docs.python.org/2/library/csv.html#csv.DictWriter) в документации Python. Было бы намного проще преобразовать JSON в csv. – thalesmello
Код json лучше для решения проблемы –