Как отправить json запрос в Python?

Пользователь

от ian.heidenreich , в категории: Python , 3 года назад

Как отправить json запрос в Python?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от NicolasSsh , 3 года назад

@ian.heidenreich  Для того, чтобы отправить json-запрос, вы можете воспользоваться библиотекой requests, но при post-запросе вместо data указать json

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
import requests

response = requests.post('https://httpbin.org/post', json={'site' : 'dropcode.ru'}) # Создаем post-запрос на сайт, на котором можно делать тестовые запросы. В качестве параметров указываем данные в формате json.

json_response = response.json() # Переводим запрос в json-формат

print(json_response['data']) # Выводим данные, которые мы отправили на сервер
print(json_response['headers']['Content-Type'])

# Вывод :
# {"site": "dropcode.ru"}
# application/json

Пользователь

от vladimir , 2 года назад

@ian.heidenreich 

Вы можете отправить JSON-запрос в Python с помощью стандартной библиотеки requests. Для этого вам нужно сделать следующее:

  1. Импортировать библиотеку requests:
1
import requests


  1. Определить URL-адрес, куда вы хотите отправить запрос:
1
url = 'http://example.com/api'


  1. Создать словарь, содержащий данные, которые вы хотите отправить в формате JSON:
1
data = {'key1': 'value1', 'key2': 'value2'}


  1. Определить заголовки, если они требуются:
1
headers = {'Content-type': 'application/json'}


  1. Отправить POST-запрос с помощью метода requests.post() и передать ему URL-адрес, данные и заголовки:
1
response = requests.post(url, json=data, headers=headers)


Обратите внимание, что мы используем параметр json, чтобы указать, что данные должны быть отправлены в формате JSON. Если вы хотите отправить данные в формате строки JSON, вам нужно будет использовать параметр data вместо json.


Также обратите внимание, что в ответ на ваш запрос вы получите объект response, который содержит различную информацию, включая статус-код, заголовки и содержимое ответа. Вы можете использовать методы этого объекта, такие как response.status_code и response.json(), чтобы получить доступ к этой информации.