Python爬蟲之403 Forbidden

狀態碼403 Forbidden代表客戶端錯誤,指的是服務器端有能力處理該請求,但拒絕授權訪問。

Python爬取數據時,有時會遇上403錯誤,通常的解決方法是在請求時的header中添加User-Agent,讓服務器端認爲該爬取的動作是客戶端發起的。然而,並不是每一次都能達到預期的效果。

如遇添加了User-Agent,依舊無法解決403的錯誤問題。應從HTTP請求的分析,通過分析Request Header參數,是否有其他的參數需要添加,例如Referer參數,往往服務器以Header參數設置是否接受訪問的校驗。

示例代碼如下:

 headers = {

        'User-Agent': "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.116 Safari/537.36",

        'Referer': "https://www.baidu.com",

         ……

    }

    request = urllib.request.Request(url, headers=headers)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章