我們在使用爬蟲的過程中會遇到很多問題,會返回一些狀態碼給我們,那么這些狀態碼是什么意思呢?如果我們能正確理解這些狀態碼的含義,就能對癥下藥,解決問題,成功獲取數據。以下小系列將向您介紹爬蟲遇到這些狀態代碼意味著什么:
500:服務器內部錯誤,服務器遇到意外情況,導致它無法完成請求的處理。一般來說,當服務器端的源代碼錯誤時,就會出現這個問題。
51:服務器不識別它,它不支持當前請求所需的功能。當服務器無法識別所請求的方法并且無法支持其對任何資源的請求時。
502:錯誤網關,當作為網關或代理工作的服務器嘗試執行請求時,它從上游服務器收到無效響應。
503:服務錯誤,由于臨時服務器維護或過載,服務器當前無法處理請求。這種情況是暫時的,一段時間后會恢復。
400:非法請求,處理方法:丟棄。
41:未經授權,處理方式:丟棄。
403:禁止,處理方式:丟棄。
404:未找到,處理方法:丟棄。
300:HTTP/1.0應用程序不直接使用此狀態代碼,而僅用作3XX類型響應的默認解釋。有多個請求的資源可用。處理方式:如果能在程序中處理,則進一步處理;如果它不能在程序中處理,它將被丟棄。
31:請求的資源將被分配一個永久的網址,以便將來可以通過該網址訪問。處理方法:重定向到指定的網址。
32:請求的資源暫時保存在不同的網址。處理方法:重定向到臨時網址。
304:請求的資源沒有更新。處理方式:丟棄。
200:請求成功。處理方法:獲取響應的內容并進行處理。
201:請求已完成,因此創建了一個新資源。新創建的資源的URI在響應實體中可用。處理方法:爬行動物不會遇到。
202:請求被接受,但處理尚未完成。處理方法:阻塞等待。
204:服務器已經完成了請求,但是沒有返回新的信息。如果客戶是用戶代理,則無需為此目的更新自己的文檔視圖。處理方法:丟棄。
100:繼續,客戶端應該繼續發送請求。客戶端應該繼續發送請求的剩余部分,如果請求已經完成,則忽略響應。
101:協議轉換。在發送此響應的最后一個空行后,服務器將切換到升級頭中定義的那些協議。只有當切換到新協議更有利時,才應該采取類似的措施。
102:繼續處理。WebDAV擴展的狀態代碼(RFC 2518)表示處理將繼續。
通過以上研究,我們都知道爬蟲遇到這些狀態碼意味著什么。只要我們解決了這些問題,爬蟲就能完成它們的任務。不同的網站有不同的反爬蟲機制,所以爬蟲遇到的狀態碼也是不同的,比如IP限制,可以用IP模擬器表示大量的IP地址來破解。