Requests Python: как отправить HTTP-запрос

Requests Python позволяют отправлять HTTP-запросы, такие как GET или POST. Вы можете добавлять заголовки, данные формы, составные файлы и параметры с помощью простых словарей Python и получать доступ к данным ответа таким же образом.

Python Requests: отправка запросов

Что такое HTTP?

HTTP — это набор протоколов, предназначенных для обеспечения связи между клиентами и серверами. Он работает как протокол запроса-ответа между клиентом и сервером.

Веб-браузер может быть клиентом, а приложение на удаленном компьютере, на котором размещен веб-сайт, может быть сервером.

Запросы в Python

Python запрашивает лицензированную HTTP-библиотеку Apache2, написанную на языке программирования Python. Она предназначена для взаимодействия с API. Это означает, что вам не нужно вручную добавлять строки запроса к URL-адресам или кодировать ваши данные POST. Модуль Requests — это элегантная и простая HTTP-библиотека для Python.

Как установить модуль Requests

Вы можете использовать менеджеры пакетов pip, easy_install или tarball. Например, я использую PIP для установки библиотеки запросов. Но я использую Python3, поэтому мне приходится использовать pip3 вместо pip.

модуль Requests

Импорт модуля запросов

Если вы хотите работать с библиотекой Requests в Python, вы должны импортировать соответствующий модуль.

Вы можете сделать это, только добавив следующий код в начало вашего скрипта.

Напишите следующий код в файле app.py.

Хорошо, теперь давайте отправим запрос GET в мой профиль Github.

В приведенном выше коде сначала мы импортировали модуль запросов, а затем использовали метод GET, чтобы отправить запрос GET в API GitHub и сохранить ответ внутри переменной res, а затем вызвать метод json() для этого объекта, и мы получить словарь. Затем я вызвал словарь по его ключу, и мы получили результат.

Импорт модуля запросов

У моего профиля на Github сейчас 311 подписчиков, поэтому он вернул 311. В будущем это может измениться в зависимости от того, когда вы будете проходить это руководство.

Когда вы делаете запрос, Requests делает обоснованные предположения о кодировке ответа на основе заголовков HTTP.

Другие HTTP-запросы

До сих пор мы использовали запрос GET. Вы также можете отправлять запросы POST, PUT, DELETE, HEAD и OPTIONS.

Синтаксис всех запросов следующий.

Python GET-запросы

Методы HTTP, такие как GET и POST, определяют, какое действие вы пытаетесь выполнить при выполнении HTTP-запроса. Помимо GET и POST, есть несколько других распространенных методов, которые вы будете использовать позже в этом примере.

Одним из наиболее распространенных методов HTTP является GET. Запрос GET указывает, что вы пытаетесь получить или извлечь данные из указанного ресурса. Чтобы сделать запрос GET, вызовите request.get().

См. следующий код.

Вывод:

Я подписан на 13 человек в моем профиле Github.

Ответ на запрос Python GET

Ответ — это надежный объект для проверки результатов запроса. Давайте снова сделаем тот же запрос, но на этот раз сохраним возвращаемое значение в переменной, чтобы вы могли поближе рассмотреть ее атрибуты и поведение.

Вывод:

В этом примере вы получили возвращаемое значение get(), экземпляр Response, и сохранили его в переменной с именем Response.

Теперь вы можете использовать ответ, чтобы увидеть много информации о результатах вашего запроса GET.

Мы можем получить код состояния, используя следующий код.

Вывод:

Первая часть информации, которую вы можете получить из Response, — это код состояния. Код состояния информирует вас о статусе запроса.

Например, статус 200 OK означает, что ваш запрос был выполнен успешно, тогда как статус 404 NOT FOUND означает, что ресурс, который вы искали, не найден. Кроме того, существует множество других возможных кодов состояния, чтобы дать вам конкретное представление о том, что произошло с вашим запросом.

Оцените статью

Автор статей и разработчик, делюсь знаниями.

Программирование на Python