Ich versuche, http Statuscode 3XX/302 für eine Umleitung URL erfassen. Aber ich kann es nicht bekommen, weil es 200 Statuscode gibt. HierHttp Umleitung Code 3XX in Python-Anfragen
ist der Code:
import requests
r = requests.get('http://goo.gl/NZek5')
print r.status_code
Ich nehme an dieser Ausgabe sollte entweder 301 oder 302, da es zu einer anderen Seite umleitet. Ich hatte versucht, einige URLs umzuleiten (zum Beispiel http://fb.com), aber wieder gibt es die 200 aus. Was sollte getan werden, um den Umleitungscode richtig zu erfassen?
, wenn wir die Anfrage mit allow_redirects = False laufen, bedeutet dies nicht gewohnt zum Umleiten Seite gehen Umleitungen und Seite zu ermöglichen. Warum also 301 statt 200? – Bishwash
@ user2789099: Entschuldigung, ich folge dir nicht. '301' ist der Umleitungsstatuscode. 'Anfragen' erhalten immer zuerst die erste URL; Wenn das eine 301-Weiterleitung ist und "allow_redirects" "True" ist, wird die Antwort zur Verlaufsliste hinzugefügt und "requests" macht eine weitere GET-Anfrage, um den neuen Standort abzurufen, und so weiter. Wenn 'allow_redirects'' False' ist, wird das erste '301' direkt zurückgegeben. –
@ user2789099: Wenn 'request_redirects'' 'True' 'ist, wird die letzte Antwort zurückgegeben. Die '200' ist also so, weil' requests' der Umleitung gefolgt sind und die nächste Seite auch geholt haben. –