web-dev-qa-db-fra.com

Comment obtenir le contenu brut d'une réponse dans des requêtes avec Python?

Essayer d'obtenir les données brutes du contenu de la réponse HTTP dans requests en Python. Je souhaite transmettre la réponse via un autre canal, ce qui signifie que l'idéal serait que le contenu soit aussi vierge que possible.

Quelle serait une bonne façon de procéder?

18
Juan Carlos Coto

Si vous utilisez un requests.get appelez pour obtenir votre réponse HTTP, vous pouvez utiliser l'attribut raw de la réponse. Voici le code des requests docs .

>>> r = requests.get('https://github.com/timeline.json', stream=True)
>>> r.raw
<requests.packages.urllib3.response.HTTPResponse object at 0x101194810>
>>> r.raw.read(10)
'\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\x03'
17
Brien

Après requests.get(), vous pouvez utiliser r.content pour extraire le contenu brut de type octet.

r = requests.get('https://yourweb.com', stream=True)
r.content
11
Tom