Не удалось сохранить файл JSON в Python - PullRequest
0 голосов
/ 06 января 2020

Может ли кто-нибудь помочь мне указать, что не так с приведенной ниже функцией?

def RetrieveQuotes(token, appid):
 quoteRequestMsg = json.load(open('GetEventHeadlines_Request_1.json'))

 quoteURL = 'http://api.trkd.thomsonreuters.com/api/StreetEvents/StreetEvents.svc/REST/StreetEvents_2/GetEventHeadlines_1'
 headers = {'content-type': 'application/json;charset=utf-8',
           'X-Trkd-Auth-ApplicationID': appid, 'X-Trkd-Auth-Token': token}

 print('############### Sending Quote request message to TRKD ###############')
 quoteResult = doSendRequest(quoteURL, quoteRequestMsg, headers)
 if quoteResult and quoteResult.status_code == 200:
    print('Quote response message: ')
    #print(quoteResult.json())
    #print(json.dumps(quoteResult.json(), sort_keys=True,indent=2, separators=(',', ':')))
 with open('quoteResult.json', 'w') as f:
    json.dump(quoteResult, f)

Когда я печатаю файл JSON, он работает нормально, но я не могу сохранить содержимое JSON на моем локальном компьютере. Я получаю сообщение об ошибке ниже.

Объект типа 'Response' не JSON serializable

Может ли кто-нибудь помочь мне в этом?

Ответы [ 2 ]

1 голос
/ 07 января 2020

Вам нужно будет использовать quoteResult.text, чтобы получить необработанный текст из ответа, который вы можете передать json .dump ()

0 голосов
/ 06 января 2020

quoteResult - код ответа, используйте для сохранения quoteResult.content

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...