首頁  >  文章  >  後端開發  >  為什麼我在 Python 請求 API 呼叫中收到「403 Forbidden」錯誤?

為什麼我在 Python 請求 API 呼叫中收到「403 Forbidden」錯誤?

Patricia Arquette
Patricia Arquette原創
2024-11-01 04:53:02477瀏覽

Why Am I Getting

排查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中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn