常見爬蟲反扒措施

  • header  瀏覽器的請求頭 (全國動產抵押監督管理平臺)
  • User-Agent  用戶代理,表明訪問源身份的一種方式  (全國動產抵押監督管理平臺)
  • Referer  訪問的目標鏈接是從哪個鏈接跳轉過來的(做防盜鏈的話,就可以從它入手)HTTP來源地址(referer,或 HTTP referer)是HTTP表頭的一個字段,用來表示從哪兒鏈接到目前的網頁,採用的格式是URL。換句話說,藉着HTTP來源地址,目前的網頁可以檢查訪客從哪裏而來,這也常被用來對付僞造的跨網站請求。 (中國裁判文書網)
  • Host  同源地址判斷,用它會很有用 (IT桔子)
  • IP  同一個IP短時多次訪問,就很有可能是爬蟲,反爬蟲會對此做處理 (搜狗微信)
  • 訪問頻率 短時多次高併發的訪問,基本上就是有問題的訪問 (搜狗微信)
  • Cookie 存儲在瀏覽器端,常用來保存“認證數據”,請求會攜帶這些數據發送給服務器,這樣服務器才能判斷當前請求的狀態 (北京市企業信用信息網)
  • 動態請求加載  通過Ajax異步加載的網頁內容在網頁源碼中是沒有的,網頁返回的response中是解析不到我們想要的內容的 (大衆點評)
  • 網站數據加密  抓取下來的數據是經過加密的,給爬蟲數據處理帶來問題 (去哪兒)
  • 混淆js加密  首次請求數據時,服務端返回動態的混淆加密過的JS,而這段JS的作用是給Cookie添加新的內容用於服務端驗證,此時返回的狀態碼一般不是200。瀏覽器帶上新的Cookie再次請求,服務端驗證Cookie通過返回數據(這也是爲嘛代碼不能返回數據的原因)  (中國裁判文書網)
  • 驗證碼  用戶請求頻率過高的時候,有些網站就會觸發驗證碼驗證機制,讓你輸入各種驗證碼 (12306)
  • 登錄  需要用戶登錄之後才能夠獲取頁面中的信息,那麼這種防護能非常有效的防止數據大批量的被爬取 (IT桔子)
  • 限制網頁返回數據條數  網頁剛開始會顯示很多條,當你賬號或者一段時間後網頁返回數據,你只能侷限於前幾頁或者前幾條 (IT桔子)
  • Noscript標籤的使用 <noscript>標籤是在瀏覽器(或者用戶瀏覽標識),沒有啓動腳本支持的情況下觸發的標籤,在低級爬蟲中,基本都沒有配置js引擎,通常這種方式和Ajax異步加載同時使用。用於保護自己不想讓爬蟲接觸的信息。當JavaScript被禁用或者不被支持時提供的一種代替方式,即 noscrip 標籤中的內容會在此時被瀏覽器解析,作爲 javascript 不可用時的備選方案。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章