JSONをUrlでフェッチし、PythonでCSVに変換しますが、エラーが表示されます。下記を参照してください。JSON、URLフェッチ、CSV変換、Python
import requests
import pprint
import json
import csv
mysession = requests.Session()
url = 'https://shoiapi.xx.com/api/method/login'
data = {'usr': '@gmail.com', 'pwd': 'mh'}
ret=mysession.post(url, data=data)
response_data_json = ret.json()
print("---------------Post---------------------\n")
print(response_data_json)
stringOfJsonData = json.dumps(response_data_json)
tempf=open('test.csv', 'a')
f = csv.writer(tempf)
f.writerow(["home_page", "message", "full_name"])
pprint.pprint(stringOfJsonData)
for xin in stringOfJsonData:
f.writerow([xin["home_page"],xin["message"],xin["full_name"]
])
tempf.close()
print("---------------Out error---------------------\n")
Error i am geting
f.writerow([xin["home_page"],xin["message"],xin["full_name"]
TypeError: string indices must be integers
print("---------------Out error---------------------\n")
私は取得していますエラー: 私は取得していますエラー: エラー私は取得しています: f.writerow([XIN [ "home_page"]、XIN [ "メッセージ"]、XIN [」 FULL_NAME "]有効なログインの詳細がなく
TypeError: string indices must be integers
Fxied、申し訳ありませんが、 'fieldnames'と言ってください。 –
あなたが持っているリクエストはJSONデータを返しません。明らかにJSONとしてHTMLをデコードすると 'JSONDecodeError'が返されます。通常のブラウザでそのURLに行くと 'shoiapi.erpnext.comは存在しません。 ' –
スクリプトはCSVファイルに1つのエントリを与えるようになりました。 –