不同的網站有不同的反爬蟲策略,對爬蟲的限制也不同。一般可分為以下三類:
1.設定不返回網頁或延遲返回時間
傳統的反爬蟲方法是不返回網頁,即爬蟲將要求發送到相應的網站,網站返回404頁,表示服務器無法正常提供信息,或者服務器沒有響應;網站也可能長時間不返回數據,這意味著爬蟲被禁止。
2.返回的網頁不是目標網頁
除了不返回頁面外,還有一些爬蟲程式返回非目標頁面,也就是說,該網站返回虛假數據,例如,當返回空白頁面或爬回多個頁面時返回同一頁面。如果你的爬蟲運作順利,你會很高興做其他事情。搜尋半小時後,你會發現每個頁面的搜尋結果都是一樣的,也就是假網站。
例如去哪裡網票價頁面,網路標註的價格和html原始碼不一樣。例如網路標註的機票價格是530元,而且html原始碼中的票價是538元。除了去哪裡網,貓眼電影和鬥魚直播也採用了這種方法,爬下來的數字和真實數字不一樣。
3.增加訪問難度
該網站還將透過增加獲取數據的難度來防止爬蟲。一般來說,登入可以看到資料並設定驗證碼。為了限制爬蟲,網站可能會要求您登入並輸入要存取的驗證碼,無論您是否是真正的使用者。例如,為了限制自動搶票,12306採用了嚴格的驗證碼功能,要求使用者在8張圖片中正確選擇。
這三種情況在爬蟲界很常見。爬蟲需要根據不同的實際情況制定不同的防爬策略,以便順利運作。