Библиотека запросов является одним из важных аспектов Python для выполнения HTTP-запросов по указанному URL-адресу. Эта статья посвящена тому, как можно сделать запрос HEAD на указанный URL-адрес с помощью метода requests.head (). Прежде чем проверить метод HEAD, давайте выясним, что такое Http-запрос HEAD.
Метод Http HEAD
HEAD — это метод запроса, поддерживаемый HTTP, используемый Всемирной паутиной. Метод HEAD запрашивает ответ, идентичный запросу GET, но без тела ответа. Это полезно для извлечения метаинформации, записанной в заголовках ответов, без необходимости переноса всего содержимого.
Как сделать запрос HEAD с помощью запросов Python
Модуль запросов Python предоставляет встроенный метод head() для выполнения запроса HEAD к указанному URI.
Синтаксис:
requests.head(url, params={key: value}, args)
Пример:
Давайте попробуем сделать запрос на API http bin для примера.
import requests
# Making a HEAD request
r = requests.head('https://httpbin.org/', data ={'key':'value'})
# check status code for response received
# success code - 200
print(r)
# print headers of request
print(r.headers)
# checking if request contains any content
print(r.content)
сохраните этот файл как request.py и через терминал запустить:
python request.py
Выход:
Дополнительно с запросом ГОЛОВЫ
Метаинформация, содержащаяся в заголовках HTTP в ответ на запрос HEAD, SHOULD быть идентична информации, отправленной в ответ на запрос GET. Этот метод может быть использован для получения метаинформации о сущности, подразумеваемой запросом, без передачи самого тела сущности. Этот метод часто используется для проверки гипертекстовых ссылок на достоверность, доступность и недавние изменения.
Ответ на запрос HEAD MAY быть кэшируемым в том смысле, что информация, содержащаяся в ответе, MAY быть использована для обновления ранее кэшированной сущности с этого ресурса. Если новые значения полей указывают на то, что кэшированная сущность отличается от текущей сущности (как это было бы указано изменением длины содержимого, Content-Length, Content-MD5, ETag or Last-Modified), то кэш MUST рассматривать запись в кэше как устаревшую.