Использование заголовков с методом get из библиотеки запросов Python - PullRequest
104 голосов
/ 07 июня 2011

Итак, я недавно наткнулся на эту замечательную библиотеку для обработки HTTP-запросов в Python;нашел здесь http://docs.python -requests.org / ru / latest / index.html .

Мне нравится работать с ним, но я не могу понять, как добавить заголовки к моемуЗапросы.Помощь

Ответы [ 3 ]

186 голосов
/ 07 июня 2011

В соответствии с api , все заголовки могут быть переданы с использованием request.get:

r=requests.get("http://www.example.com/", headers={"content-type":"text"})
31 голосов
/ 07 июня 2011

Кажется довольно простым, согласно документам на странице, на которую вы ссылаетесь (выделено мной).

reports.get (url, params = Нет, заголовки = Нет, файлы cookie = Нет, auth = Нет, Тайм-аут не = None) * +1006 *

Отправляет запрос GET. Возвращает Response объект.

Параметры:

  • url - URL для нового Request объект.
  • params - (необязательно) Словарь GET-параметров для отправки с Request.
  • заголовки - (необязательно) Словарь HTTP заголовков для отправки с Request.
  • куки - (необязательно) Объект CookieJar для отправки вместе с Request.
  • auth - (необязательно) AuthObject включить базовую аутентификацию HTTP.
  • тайм-аут - (необязательно) Float с описанием тайм-аут запроса.
16 голосов
/ 19 июня 2017

Этот ответ научил меня, что вы можете установить заголовки для всего сеанса:

s = requests.Session()
s.auth = ('user', 'pass')
s.headers.update({'x-test': 'true'})

# both 'x-test' and 'x-test2' are sent
s.get('http://httpbin.org/headers', headers={'x-test2': 'true'})

Бонус: Сессии также обрабатывают куки.

...