HTTP-запрос в Python TypeError - PullRequest
       3

HTTP-запрос в Python TypeError

0 голосов
/ 02 ноября 2019

Почему этот код возвращает исключение:

raise TypeError(f'Object of type {o.class.name} 
TypeError: Object of type set is not JSON serializable

Мой код:

import requests

json_data  = {"Челябинская обл, г Челябинск, ул Ворошилова, д 55"}
resp = requests.post('https://dadata.ru/api/v2/suggest/address', json=json_data)
resp.json()

print(resp.json()[0]['region_fias_id'])

1 Ответ

0 голосов
/ 02 ноября 2019

Как говорится, ваша json_data переменная является множеством.

В соответствии с документами API, которые вы используете , похоже, что вам нужен дикт с ключом запроса:

json_data  = {"query": "Челябинская обл, г Челябинск, ул Ворошилова, д 55"}

Хотя обратите внимание, что выВам нужно будет включить ваш ключ API в заголовки этого поста:

headers = {"Authorization": "Token {}".format(API_KEY)}
resp = requests.post('https://dadata.ru/api/v2/suggest/address', json=json_data, headers=headers)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...