Вот пример создания POST-запроса на Python с использованием библиотеки requests
:
import requests
url = "http://example.com/api"
data = {"key1": "value1", "key2": "value2"}
response = requests.post(url, data=data)
print(response.status_code)
print(response.json())
В приведенном выше коде мы импортируем библиотеку requests
и указываем URL-адрес, к которому мы хотим отправить POST-запрос. Мы также предоставляем данные в виде словаря, используя параметр data
. После отправки запроса мы можем получить доступ к ответу, используя объект response
. В этом примере мы печатаем код состояния ответа и содержимое JSON, возвращаемое сервером.
Вот еще несколько способов выполнения POST-запросов в Python:
-
Использование модуля
http.client
:import http.client conn = http.client.HTTPSConnection("example.com") payload = "key1=value1&key2=value2" headers = {'Content-Type': 'application/x-www-form-urlencoded'} conn.request("POST", "/api", payload, headers) res = conn.getresponse() print(res.status) print(res.read())
-
Использование модуля
urllib
:import urllib.parse import urllib.request url = "http://example.com/api" data = {"key1": "value1", "key2": "value2"} data_encoded = urllib.parse.urlencode(data).encode('utf-8') req = urllib.request.Request(url, data=data_encoded) response = urllib.request.urlopen(req) print(response.status) print(response.read())
-
Использование модуля
http.client
(альтернативный метод):import http.client conn = http.client.HTTPSConnection("example.com") payload = '{"key1": "value1", "key2": "value2"}' headers = {'Content-Type': 'application/json'} conn.request("POST", "/api", payload, headers) res = conn.getresponse() print(res.status) print(res.read())