Можете ли вы получить заголовки запроса с python библиотекой запросов? - PullRequest
0 голосов
/ 19 февраля 2020

Я использую библиотеку запросов python, чтобы получить все заголовки с веб-сайта, однако запросы, похоже, только получают заголовки ответа, и мне также нужны заголовки запроса.

Есть ли способ получить заголовки запросов в библиотеке запросов или я должен использовать другую библиотеку для получения заголовков?

мой код:

import requests

r = requests.get("https://google.com", allow_redirects = False)

for key in r.headers:
    print(key, ": ", r.headers[key])

output :

Location :  https://www.google.com/
Content-Type :  text/html; charset=UTF-8
Date :  Wed, 19 Feb 2020 13:08:27 GMT
Expires :  Fri, 20 Mar 2020 13:08:27 GMT
Cache-Control :  public, max-age=2592000
Server :  gws
Content-Length :  220
X-XSS-Protection :  0
X-Frame-Options :  SAMEORIGIN
Alt-Svc :  quic=":443"; ma=2592000; v="46,43",h3-Q050=":443"; ma=2592000,h3-Q049=":443"; ma=2592000,h3-Q048=":443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043=":443"; ma=2592000

1 Ответ

1 голос
/ 19 февраля 2020

Объект ответа содержит объект запроса, который является запросом, вызвавшим ответ.

Этот объект requests.models.PreparedRequest доступен через свойство request объекта ответа, его заголовок находится в свойстве headers объекта запроса.

См. Этот пример:

>>> import requests
>>> r = requests.get("http://google.com")
>>> r.request.headers
{'Connection': 'keep-alive', 'User-Agent': 'python-requests/2.22.0', 'Accept': '*/*', 'Accept-Encoding': 'gzip, deflate'}
...