Heim >Backend-Entwicklung >Python-Tutorial >Wie kann ich mich mit dem Anforderungsmodul von Python erfolgreich bei einer Website anmelden?

Wie kann ich mich mit dem Anforderungsmodul von Python erfolgreich bei einer Website anmelden?

Susan Sarandon
Susan SarandonOriginal
2024-12-04 20:50:121054Durchsuche

How Can I Successfully Log into a Website Using Python's Requests Module?

Anmelden bei einer Website mit Python-Anfragen: Cookies und HTTP-Autorisierung

Problem:

Ein Benutzer kann sich aufgrund von Problemen bei der Cookie-Verarbeitung nicht mit dem Requests-Modul von Python bei einer Website anmelden. Der Code nutzt „requests.post“, liefert aber falsche Ergebnisse.

Lösung:

HTTP-Autorisierung vs. Cookies

HTTP-Autorisierung Dabei werden die Anmeldeinformationen des Benutzers direkt als Teil des HTTP-Headers gesendet. Andererseits ermöglichen Cookies dem Server, den Status aufrechtzuerhalten, indem sie Informationen auf dem Computer des Clients speichern.

Korrekte Verwendung von Cookies

Im bereitgestellten Code hat der Benutzer eine erstellt Das Wörterbuch rief ck auf und übergab es als Argument an request.post. Dieses Wörterbuch sollte jedoch stattdessen als Datenparameter übergeben werden.

Korrigierter Code

ck = {'inUserName': 'USERNAME/EMAIL', 'inUserPass': 'PASSWORD'}
r = requests.post(url, data=ck)

Anmeldestatus beibehalten

Um über einen längeren Zeitraum angemeldet zu bleiben, muss eine Websitzung beibehalten werden. Dies kann mithilfe einer „requests.Session“-Klasse erreicht werden. Standardmäßig erstellt Requests für jede Anfrage eine neue Sitzungsinstanz.

Vorgeschlagener Code mit Sitzung

with requests.Session() as session:
    login_data = {'inUserName': 'USERNAME/EMAIL', 'inUserPass': 'PASSWORD'}
    response = session.post(url, data=login_data)

    # Check login status. If successful, make subsequent requests using the same session
    if response.status_code == 200:
        safe_response = session.get('protected_url')
        print(safe_response.text)

Das obige ist der detaillierte Inhalt vonWie kann ich mich mit dem Anforderungsmodul von Python erfolgreich bei einer Website anmelden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn