如何解決爬蟲被封IP的問題
由于公司的需要項目,需要收集各種地圖數據和一些大型網站數據。那么,爬蟲IP被屏蔽了怎么辦?教你如何解決爬蟲被封IP的問題:
精靈IP代理必須要有更多的IP,比如ADSL。有條件的話,其實可以跟機房申請一個外部IP。
使用外部IP在機器上部署代理IP服務器
您的程序使用輪換訓練而不是IP代理服務器來訪問您想要收集的網站。
好處:
程序邏輯變化不大,只需要IP代理函數。
根據其他網站不同的屏蔽規則,你只需要多加幾個代理就可以了。
即使某個特定IP被屏蔽,也可以直接注銷代理服務器到OK,程序邏輯不需要改變。
有少數網站防范措施薄弱,可以偽裝IP,修改x-forward-for。可以被旁路。大多數網站如果要經常抓取,通常需要更多的IP。我最喜歡的方案是將國外的VP匹配多個IP,通過默認網關交換實現IP交換,比HTTP代理效率高很多,大部分情況下可能也比ADSL交換效率高。
ADSL腳本,監控是否被屏蔽,然后不斷切換ip。
設置查詢頻率限制
正統的方式是調用這個網站提供的服務接口。
有8年以上爬蟲經驗的人告訴你,ADSL在中國是王道,有很多應用線路分布在很多不同的電信廳,跨省市可以更好。編寫自己的斷開重撥組件,編寫自己的動態IP跟蹤服務,并重置遠程硬件(主要是為了ADSL貓防止它們停下來),分配其他任務,恢復數據都不是大問題。我的已經穩定運行了幾年,狀況良好!
精靈IP代理網站屏蔽的依據一般是特定IP單位時間的訪問量。我會把收集的任務按照目標站點的IP分組,控制每個IP單位時間發送的任務數量,避免被封。當然這個前提是你收集了很多網站,如果只收藏一個網站,就只能通過多個外部IP來實現。