Richieste - Gestione del reindirizzamento
Questo capitolo esaminerà come la libreria Request gestisce il caso di reindirizzamento URL.
Esempio
import requests
getdata = requests.get('http://google.com/')
print(getdata.status_code)
print(getdata.history)
L'URL: http://google.com verrà reindirizzato utilizzando il codice di stato 301 (spostato in modo permanente) a https://www.google.com/. Il reindirizzamento verrà salvato nella cronologia.
Produzione
Quando il codice sopra viene eseguito, otteniamo il seguente risultato:
E:\prequests>python makeRequest.py
200
[<Response [301]>]
Puoi interrompere il reindirizzamento di un URL utilizzando allow_redirects = False. Può essere eseguito sui metodi GET, POST, OPTIONS, PUT, DELETE, PATCH utilizzati.
Esempio
Ecco un esempio sullo stesso.
import requests
getdata = requests.get('http://google.com/', allow_redirects=False)
print(getdata.status_code)
print(getdata.history)
print(getdata.text)
Ora se controlli l'output, il reindirizzamento non sarà consentito e otterrà un codice di stato 301.
Produzione
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>