排查Python 請求API 呼叫中的「403 Forbidden」錯誤
嘗試使用Python requests 模組解析網站時,您可能會遇到“403 禁止”錯誤。此錯誤通常表示伺服器由於權限不足或配置不當而拒絕了請求。
請求 API 呼叫中出現「403 Forbidden」錯誤的一個常見原因是 User-Agent 標頭遺失或無效。一些網站對沒有識別的用戶代理的請求進行限制。
範例:
考慮以下程式碼片段:
<code class="python">import requests url = 'http://worldagnetwork.com/' result = requests.get(url) print(result.content.decode())</code>
此程式碼會擷取指定 URL 的內容。但是,由於缺少 User-Agent 標頭,伺服器可能會傳回「403 Forbidden」錯誤。
解決方案:
要解決此問題,請新增 User -請求的代理標頭。操作方法如下:
<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>
透過指定 User-Agent 標頭,您實質上是將請求識別為來自特定瀏覽器或環境。這通常允許伺服器授予對所請求資源的存取權限。
請記得根據您的特定要求調整 User-Agent 標頭。不同的網站和伺服器可能有不同的限制,因此您可能需要嘗試不同的值,直到請求成功為止。
以上是為什麼我在 Python 請求 API 呼叫中收到「403 Forbidden」錯誤?的詳細內容。更多資訊請關注PHP中文網其他相關文章!