策略種類:
無cookie,ip不變
加cookie,ip不變
無cookie,ip**
記錄資訊:
被封時 :
測試機器
請求間隔
被封時間
被封前成功請求次數
被封現象
結論有帶ip**時:
測試機器
請求間隔
測試時間
成功次數/請求次數
被封現象
無cookie,ip不變
慶餘年&ie=utf8手動訪問鏈結輸入驗證碼後,解封,解封後,請求119次(3分鐘)再次被封。
結論:在無cookie時,封ip,輸入驗證碼可解封。
加cookie,ip不變
慶餘年&ie=utf8從windows的瀏覽器訪問該鏈結,輸入驗證碼後,拿到新的cookie(主要是新snuid)後,更新到linux機器的**裡,爬蟲解封。
注:輸入驗證碼前拿到的cookie裡的snuid不會改變。
結論:用有效cookie可以解封。
無cookie,ip**
慶餘年&ie=utf8加入ip**後,可能會訪問成功,也可能出現驗證碼跳轉頁面,也可能出現如下錯誤:
6分鐘內請求124次,59次有資料返回。
結論:變換ip有效果,但是成功率百分之50,可能和ip質量有關係;
令,加了ip**後,請求響應時間明顯變慢。
搜狗防爬思路總結:
1、ip**;
2、在被封時更新cookie(輸入驗證碼後的),通過如下頁面:
慶餘年&ie=utf8每輸入一次驗證碼,可以拿到乙個新的snuid。
3、兩種方法使用一種即可有效。
4、測試snuid的時效性,如果夠長可以提前構建snuid池。
5、測試selenium獲取cookie是否可以直接用。
破解實驗
實驗過程:
1、前一天晚上在一台ip可變(半小時變一次)的機器上部署了生成cookie的程式,並記錄了cookie生成的時間,把生成的cookie放入redis的list;
2、今天中午11點,用前幾天被封的cookie啟動搜狗爬蟲,發現又可以爬了,但是很快被封,當被封時從redis佇列取出昨天放到redis裡的cookie,發現馬上解封,但是請求5次後又被封,再從redis取新的cookie,又可以繼續爬,但是成功次數還是5次。
結論:
慶餘年&ie=utf82、每次換cookie後只能請求成功5次(間隔1s),而之前實驗表明,不加cookie時只切ip也能解封,從而猜測搜狗也是cookie和ip同時監測,只不過沒那麼嚴格,至少切了cookie可以馬上解封,所以可以繼續嘗試加上**進行優化(延緩被封時間);
不過如果cookie池夠大,即使5次被封,馬上換cookie,也絲毫不影響效率;
3、被封的cookie過段時間可以解封,所以cookie池的cookie用完可以放隊尾,並記錄上次使用時間,便於通過下一次取cookie時判斷和上次使用時間間隔來決定是否使用。
4、還需要考證乙個cookie是否會過期,從而判斷是否可以構建無限大cookie池,考證方法是,初步定乙個間隔,比如取cookie時判斷和上次使用時間間隔大於24小時才可以使用,如果遇到訪問失敗的cookie,加到失效cookie佇列,再過一段時間,判斷失效cookie佇列的cookie是否還能使用,多次試驗都不能使用,則說明cookie不是永久可以使用,反之亦然。
破解思路資料
華為實驗室
談到華為,大家都不陌生 世界500強 全球第二通訊 商,為全球140多個國家和地區的20多億人提供服務 同時也是全球ict領域的領導者。如此成就和至高無上的榮譽地位,其成功更是與實驗室無數個日夜的技術鑽研有著分不開的關係。關注過華為的朋友想必聽說過 2012實驗室 據稱,該實驗室的名字來自於任正非在...
8 10於實驗室
前幾天忙於保研的事情,沒再繼續做我的專案,結果保研恐怕要黃了,這幾天潛心考研,結果又收到了中行的實習通知,一時兩難。有時候自己寫東西太不自然,感覺寫技術文章很大一部分是為了給別人看,反而不是為了提公升自己,感覺這個心態不好,太虛榮了,現在想寫點自己的東西,輕鬆的,暢所欲言的,沒有文法和壓力的東西,記...
迷你Linux實驗室
p 當今,個人電子裝置進入了小型化時代,什麼東西都喜歡拿在手中玩,而且必是 3g 聯網裝置。那麼,可以做得多麼小呢?按照蘋果賈伯斯的理念,體積 小也是一種美,將來,微控制器 soc,或叫單片系統 必然是乙個發展方向。由此可見,arm處理器大有發展前景。那麼,哪種作業系統算小呢?大家知道,僅僅乙個 l...