Requêtes - Gestion de la redirection

Ce chapitre examinera comment la bibliothèque Request gère le cas de redirection d'url.

Exemple

import requests
getdata = requests.get('http://google.com/')
print(getdata.status_code)
print(getdata.history)

L'url: http://google.com sera redirigé à l'aide du code d'état 301 (déplacé définitivement) vers https://www.google.com/. La redirection sera enregistrée dans l'historique.

Production

Lorsque le code ci-dessus est exécuté, nous obtenons le résultat suivant -

E:\prequests>python makeRequest.py
200
[<Response [301]>]

Vous pouvez arrêter la redirection d'une URL en utilisant allow_redirects = False. Cela peut être fait sur les méthodes GET, POST, OPTIONS, PUT, DELETE, PATCH utilisées.

Exemple

Voici un exemple sur le même.

import requests
getdata = requests.get('http://google.com/', allow_redirects=False)
print(getdata.status_code)
print(getdata.history)
print(getdata.text)

Maintenant, si vous vérifiez la sortie, la redirection ne sera pas autorisée et obtiendra un code d'état 301.

Production

E:\prequests>python makeRequest.py
301
[]
<HTML><HEAD><meta http-equiv="content-type" content="text/html;charset=utf-8">
<TITLE>301 Moved</TITLE></HEAD><BODY>
<H1>301 Moved</H1>
The document has moved
<A HREF="http://www.google.com/">here</A>.
</BODY></HTML>