反網路爬蟲以及解決方案

犀牛小牛發表於2019-03-07

做技術的或者是網際網路行業的人可能都比較清楚,網路爬蟲對於網際網路的共享是非常大的,

其中有超過一半的流量都是網路爬蟲的貢獻,如果一個網站不設定發爬蟲機制,

那就會成為一個透明的研究所一樣,所有的資訊都會公開化,所以在沒有其他特殊性的情況下,

所有的網站都會設定發爬蟲機制,但是,就算是這樣,網路爬蟲還是有辦法進行反爬蟲的機制土坯。

 

今天犀牛代理IP就給大家介紹一部分常見的反網路爬蟲以及應對反網路爬蟲的突破方法。

  1.動態頁面的限制

   爬蟲工作者可能會遇到這樣的尷尬,當你抓取下目標頁面之後,你發現,關鍵資訊處一片空白,只有密密麻麻一片的框架程式碼,這是因為該網站的資訊是透過使用者Post的XHR動態返回內容資訊,解決這種問題就是要透過開發者工具(FireBug等)對網站流進行分析,對內容資訊進行抓取,獲取所需要的內容。

   那麼更復雜一些的就是對動態請求進行加密,引數滅有辦法進行解析,便也是沒有辦法進行抓取。在這樣的情況之下

,可以透過Mechanize,selenium RC,呼叫瀏覽器核心,就像真實使用瀏覽器上網那樣進行抓取,抓取的成功率會大幅度上升,但是抓取速度卻不敢恭維



    經測試,用urllib抓取拉勾網招聘資訊30頁所需時間為三十多秒,而用模擬瀏覽器核心抓取需要2--3分鐘。


常見的反網路爬蟲以及突破方法


    2.使用者行為檢測


  有一些是網站透過檢測和分析一些使用者的行為,比如說是針對cookies,透過檢查cookies來判斷使用者是不是可以利用和儲存的有效客戶,通常是需要登陸的網站,經常會採用這樣的技術。層次再深的還有,資訊驗證,部分網站的登陸是需要驗證嗎的驗證的,就像登陸的時候,系統會自動分配出驗證碼,authenticity_token,authenticity_token會和使用者提交的登入名和密碼一起傳送回伺服器。    


   3.IP的訪問頻率被限制

     部分訪問是存在著惡意性質的,一些平臺為了防止這種情況的發生,會在某個同一個IP在單元時間內超過一定的次數的時候,將禁止這個IP繼續訪問。對於這個限制IP訪問效率,可以使用代理IP的方法來解決問題。網上有很多代理IP的資源,也有一些是免費的,但是免費代理的弊端還是不少的,你就例如說匿名性就不是特別的號,很容易就會被賭坊檢測出來你在使用代理IP,但是購買像是犀牛代理IP的這種,不僅僅可以保障你的質量,而且匿名性也好,你可以放心的在任何平臺上進行使用,提高工作效率。


 以上簡單的說了三種常見的反爬蟲已經反爬蟲的應對方法,一般來講越高階的爬蟲被封鎖的機率救會越低,但是效能會比較低一些,成本上相對也會比較高一點。當成本高到一定的程度了,我們便可以無需再對爬蟲進行封鎖。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31555707/viewspace-2637809/,如需轉載,請註明出處,否則將追究法律責任。

相關文章