您在這裡

假冒搜索引擎爬蟲的識别

James Qi 在 2019年10月8日 - 14:20 發表

  标明訪問者屬性的User Agent是可以由軟件進行修改的,所以有很多采集者為了防止自己被屏蔽,就把User Agent改為搜索引擎爬蟲的特征,例如:

  為了驗證來訪者User Agent是否假冒的搜索引擎爬蟲,可以用host反查IP對應的主機名,官方說明:

  官方的說明肯定是沒有錯的,但我們在實際使用中也遇到一些問題:

  • 不是每次host反查DNS都成功,以前發生過googlebot的DNS反查IP失敗,返回數字的IP地址,然後被我們誤屏蔽的情況;
  • 不是所有搜索引擎爬蟲都支持這種反查方式,例如MIP爬蟲、baidu app的爬蟲等都不支持。

  我們現在采取的辦法:

  • 如果host反查出來是數字IP地址,暫時不能判斷是假冒的搜索引擎爬蟲;
  • 如果host反查出來是nt.js.dynamic.163data.com.cn之類的非數字IP地址,又不是已知的*.googlebot.com這種,就判為假冒搜索引擎;
  • 添加IP白名單,已知搜索引擎爬蟲IP段就放行;
  • 添加反查出來的白名單,更多種類的搜索引擎爬蟲可以放行。

  目前用PHP編寫的程序已經在一台服務器上運行了2個星期,每天可以屏蔽100多個假冒搜索引擎爬蟲的IP。例如:

IP地址=>121.232.43.147
解析主機名=>147.43.232.121.broad.nt.js.dynamic.163data.com.cn
User-Agent=>Mozilla/5.0 (compatible; bingbot/2.0; +http://www.bing.com/bingbot.htm)

 

回應

如果有現成的插件我也不想開發啊,你如果找到能解決類似問題的插件請告訴我,謝謝。🤝

不過如果能增強一些技術實力的話還是盡量增強一些,或者找技術人員一起合作,網站要發展總是會遇到各種技術問題的,要有一定實力去應對。💪😀

James Qi / 祁勁松

發表新回應

Plain text

  • 不允許使用 HTML 標籤。
  • 自動將網址與電子郵件地址轉變為連結。
  • 自動斷行和分段。