Отправка HTTP-запроса

Python:
Отправка HTTP-запроса

Как:

Внешняя библиотека requests для Python делает выполнение HTTP-вызовов простым. Ниже приведен пример отправки простого GET-запроса:

import requests

response = requests.get('https://api.example.com/data')
print(response.status_code)  # Выводит код состояния ответа
print(response.json())      # Если ответ содержит JSON, выводит его как словарь Python

Более подробный POST-запрос с JSON-полезной нагрузкой и пользовательскими заголовками:

import requests
import json

url = "https://api.example.com/submit"
data = {'key': 'value'}
headers = {'Content-Type': 'application/json'}

response = requests.post(url, data=json.dumps(data), headers=headers)

print(response.status_code)
print(response.json())

Подробное изучение

HTTP-запросы - это то, как работает веб - они существуют с начала 90-х. Альтернативы библиотеке requests Python включают стандартную библиотеку urllib, но она немного более громоздка.

Понимание отправки HTTP-запросов включает в себя знание методов (GET, POST, PUT, DELETE и др.), кодов состояния (например, 200 OK, 404 Not Found), заголовков и тела данных.

Для потоковых или асинхронных запросов вы можете исследовать асинхронный аналог requests или пакет aiohttp. Под капотом эти библиотеки используют socket Python для непосредственного сетевого общения.

Исторически requests считается идиальным выбором из-за его простоты и мощности, но httpx, более новая библиотека, совместимая с асинхроным программированием, набирает популярность.

Смотрите также