Как отправить POST запрос, и достать результат?
Есть следующий ресурс https://porfirevich.ru/, в поле вводится какая-либо строка, отпраляется POST запрос, и возвращается строка с результатом, и я собственно говоря не могу разобраться как мне самому отправить этот POST запрос и достать соответствующую строку
response = requests.post("https://pelevin.gpt.dobro.ai/generate/", data=)
Я не понимаю как собрать запрос так, чтобы он корректно выполнился
Отслеживать
Uladzislau Melnikau
задан 11 фев 2022 в 22:17
Uladzislau Melnikau Uladzislau Melnikau
312 2 2 серебряных знака 12 12 бронзовых знаков
Как отправить HTTP-запрос через Python
Овладейте отправкой HTTP-запросов в Python с помощью стандартной библиотеки http.client и популярной библиотеки requests!
Алексей Кодов
Автор статьи
10 июля 2023 в 17:48
В этой статье мы рассмотрим, как отправлять HTTP-запросы с использованием Python. Мы покажем примеры с использованием стандартной библиотеки http.client , а также популярной сторонней библиотеки requests .
Использование http.client
http.client — это модуль стандартной библиотеки Python, который предоставляет классы для работы с HTTP. Вот пример отправки GET-запроса с использованием этого модуля:
import http.client conn = http.client.HTTPSConnection("www.example.com") conn.request("GET", "/") response = conn.getresponse() print(response.status, response.reason) print(response.read().decode("utf-8")) conn.close()
В этом примере мы создаем соединение с сайтом www.example.com , отправляем GET-запрос и выводим HTTP-статус, причину и содержимое ответа.
Python-разработчик: новая работа через 9 месяцев
Получится, даже если у вас нет опыта в IT

Использование библиотеки requests
requests — это популярная сторонняя библиотека для работы с HTTP-запросами. Она обеспечивает более удобный и выразительный синтаксис по сравнению с http.client . Прежде всего, вам нужно установить эту библиотеку, используя pip:
pip install requests
Теперь давайте посмотрим, как использовать requests для отправки GET-запроса:
import requests response = requests.get("https://www.example.com") print(response.status_code) print(response.text)
Как видите, синтаксис стал намного проще и читабельнее. Библиотека requests также поддерживает множество других возможностей, таких как отправка POST-запросов, загрузка файлов и обработка кук. Вот пример отправки POST-запроса с данными:
import requests data = response = requests.post("https://www.example.com/post", data=data) print(response.status_code) print(response.text)
Теперь вы знаете, как отправить HTTP-запросы с использованием Python и разных библиотек. Не забывайте исследовать документацию и пробовать различные функции, чтобы стать более опытным в этой области.
Как составить post запрос в python?
Мне надо нажать на кнопку на сайте Как с помощью питона нажать на кнопку на сайте? Я разобрался с ним и понял что такой способ мне не подходит (он слишком медленный). Решил выбрать другой. Надо с помощью post запроса «нажать на кнопку» прозвонить. Как я понял нужно в этом post запросе указать куки. Я нашел библиотеку для работы с http «request», но русской документации к ней нету. Помогите разобраться.
- Вопрос задан более трёх лет назад
- 7784 просмотра
Комментировать
Решения вопроса 0
Ответы на вопрос 1
Изобретая велосипед
Чтобы сделать POST запрос, используйте функцию requests.post().
response = requests.post('http://example.com/', data=)
Через аргумент data передаёте словарь с переменными, если они нужны. В переменной response оказывается объект ответ, у которого есть атрибут cookies, который содержит словарь с куками. Передать эти куки в следующем запросе можно с помощью параметра (вот ведь неожиданно!) cookies.
next_response = requests.post('http://example.com/', cookies=response.cookies)
Вообще модуль request невероятно хорош, никогда не видел настолько интуитивного и удобного способа работы с HTTP. Чего только один метод .json() стоит!
Ответ написан более трёх лет назад
Нравится 7 8 комментариев
MARMELAD03 @MARMELAD03 Автор вопроса
У меня не получилось. Если вам не трудно распишите по подробнее. Мне надо пройти авторизацию в https://accounts.google.com/ServiceLogin. А потом послать post запрос. https://www.google.com/android/devicemanager/xhr/d. «Какие-то куки».
MARMELAD03 @MARMELAD03 Автор вопроса
Буду очень благодарен если вы мне поможите разобраться.
MARMELAD03: с сервисами Google лучше не страдать этой ерундой, потому что у них есть цивильное API практически на всё.
А что именно не получилось? Что накодили? С какими трудностями столкнулись?
MARMELAD03 @MARMELAD03 Автор вопроса
Подскажите есть ли api к этому сервису и где его найти пожалуйста.
MARMELAD03: во-первых, есть тэг для того, чтобы код оставался читаемый. Во-вторых, ошибка означает, что имя request не известно интерпретатору (точнее, отсутствует в данном пространстве имён). Это я Вас немного обманул, нужно использовать requests.post().
Как использовать библиотеку Requests для выполнения HTTP-запросов в Python
Библиотека requests — это простой в использовании и мощный инструмент, который позволяет выполнить HTTP-запросы в Python. Он предоставляет простой и интуитивно понятный интерфейс для отправки запросов и получения ответов от веб-серверов.
В этой статье мы рассмотрим основы использования библиотеки requests для выполнения GET-, POST-, PUT- и DELETE-запросов, а также для отправки файлов.
Установка библиотеки Requests
Перед тем, как мы начнем использовать библиотеку requests , вам нужно убедиться, что она установлена на вашей машине. Вы можете установить ее с помощью следующей команды:
pip install requests
Выполнение GET-запроса
GET-запросы используются для получения данных с сервера. Вот как выполнить GET-запрос с помощью requests :
import requests
url = 'https://jsonplaceholder.typicode.com/todos/1'
response = requests.get(url)
print(response.status_code)
print(response.json())
В этом примере мы выполняем GET-запрос на URL-адрес https://jsonplaceholder.typicode.com/todos/1 . Метод requests.get() возвращает объект Response , который содержит ответ сервера на наш запрос. Мы используем метод status_code для получения статус-кода ответа и метод json() для получения содержимого ответа в формате JSON.
Выполнение POST-запроса
POST-запросы используются для отправки данных на сервер. Вот как выполнить POST-запрос с помощью requests :
import requests
import json
url = 'https://jsonplaceholder.typicode.com/posts'
headers =
data =
response = requests.post(url, headers=headers, data=json.dumps(data))
print(response.status_code)
print(response.json())
В этом примере мы отправляем POST-запрос на URL-адрес https://jsonplaceholder.typicode.com/posts , передавая заголовки и данные в формате JSON. Мы используем метод json.dumps() для преобразования нашего словаря данных в строку JSON, которую можно отправить в теле запроса.
Выполнение PUT-запроса
PUT-запросы используются для обновления данных на сервере. Вот как выполнить PUT-запрос с помощью requests :
import requests
import json
url = 'https://jsonplaceholder.typicode.com/posts/1'
headers =
data =
response = requests.put(url, headers=headers, data=json.dumps(data))
print(response.status_code)
print(response.json())
В этом примере мы отправляем PUT-запрос на URL-адрес https://jsonplaceholder.typicode.com/posts/1 , передавая заголовки и данные в формате JSON. Мы используем метод json.dumps() для преобразования нашего словаря данных в строку JSON, которую можно отправить в теле запроса.
Выполнение DELETE-запроса
DELETE-запросы используются для удаления данных на сервере. Вот как выполнить DELETE-запрос с помощью requests :
import requests
url = 'https://jsonplaceholder.typicode.com/posts/1'
response = requests.delete(url)
print(response.status_code)
В этом примере мы отправляем DELETE-запрос на URL-адрес https://jsonplaceholder.typicode.com/posts/1 . Мы используем метод requests.delete() для отправки запроса.
Отправка файлов
requests также позволяет отправлять файлы на сервер. Вот как отправить файл с помощью requests :
import requests
url = 'https://httpbin.org/post'
files =
response = requests.post(url, files=files)
print(response.status_code)
print(response.json())
В этом примере мы отправляем файл example.txt на URL-адрес https://httpbin.org/post с помощью метода requests.post() . Мы передаем файл в параметре files , который принимает словарь, где ключами являются имена полей формы, а значениями — объекты файла.
Это был небольшой обзор библиотеки requests в Python. Он предоставляет множество возможностей для работы с HTTP-запросами, и мы рекомендуем вам ознакомиться с документацией для получения дополнительной информации.