Heim > Artikel > Backend-Entwicklung > Warum erhalte ich die Fehlermeldung „403 Forbidden“, wenn ich API-Aufrufe für Python-Anfragen durchführe?
Fehlerbehebung bei „403 Forbidden“-Fehlern in API-Aufrufen von Python-Anfragen
Beim Versuch, Daten von einer Website mithilfe des Anforderungsmoduls von Python zu extrahieren, ist dies nicht der Fall Es kommt selten vor, dass der Fehler „403 Forbidden“ auftritt. Dieser Fehler weist darauf hin, dass der Server die Anforderung aufgrund von Zugriffsbeschränkungen nicht erfüllen kann.
Beachten Sie den folgenden Codeausschnitt:
<code class="python">import requests url = 'http://worldagnetwork.com/' result = requests.get(url) print(result.content.decode())</code>
Bei der Ausführung kann dieser Code den folgenden Fehler zurückgeben:
<html> <head><title>403 Forbidden</title></head> <body bgcolor="white"> <center><h1>403 Forbidden</h1></center> <hr><center>nginx</center> </body> </html>
Das Problem in diesem Fall ergibt sich aus der Tatsache, dass die Website GET-Anfragen ablehnt, denen ein richtiger User-Agent-Header fehlt. Indem wir die Seite in einem Browser (z. B. Chrome) besuchen und den Netzwerkverkehr überprüfen, können wir den vom Browser verwendeten User-Agent ermitteln.
Um den Fehler zu beheben, müssen wir den User-Agent-Header hinzufügen Rufen Sie unsere Anfragen auf:
<code class="python">import requests url = 'http://worldagnetwork.com/' headers = {'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.102 Safari/537.36'} result = requests.get(url, headers=headers) print(result.content.decode())</code>
Nachdem der User-Agent-Header hinzugefügt wurde, sollte die Anfrage nun erfolgreich den HTML-Inhalt der Website analysieren können.
Das obige ist der detaillierte Inhalt vonWarum erhalte ich die Fehlermeldung „403 Forbidden“, wenn ich API-Aufrufe für Python-Anfragen durchführe?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!