(電子商務(wù)研究中心訊) 相信不少網(wǎng)站對(duì)搜索引擎爬蟲都是又愛又恨,因?yàn)槠渲胁粌H有些爬蟲不守規(guī)矩,還有人冒充爬蟲對(duì)網(wǎng)站進(jìn)行瘋狂的掃描。
做的比較好的爬蟲抓取頻率都比較合理,對(duì)網(wǎng)站資源消耗比較少,Google Spider會(huì)根據(jù)網(wǎng)頁的下載速度等因素進(jìn)行抓取速度的動(dòng)態(tài)調(diào)整,你可以通過Webmaster Tools來調(diào)整Spider的抓取速度。
Google_Webmaster_Tools_Settings
很多糟糕的網(wǎng)絡(luò)爬蟲,經(jīng)常并發(fā)幾十上百個(gè)請(qǐng)求循環(huán)重復(fù)抓取。一個(gè)“爬蟲”先是將PageNo遞增到無窮大——被封,過了4個(gè)小時(shí),“爬蟲”又回來了,這次程序倒是改進(jìn)了不少,通過分析網(wǎng)頁內(nèi)部的鏈接進(jìn)行抓取,可是沒過多久發(fā)現(xiàn)總是抓取那幾個(gè)特定的頁面,原來被網(wǎng)頁內(nèi)部鏈接套住,程序進(jìn)入了死循環(huán),只能封殺。
網(wǎng)上也出現(xiàn)了很多如何封殺惡意爬蟲的方法。常見的就是根據(jù)UserAgent中的標(biāo)識(shí)進(jìn)行識(shí)別封殺,但是道高一尺魔高一丈,接下來就有人偽造User-Agent,偽裝成各大搜索引擎的爬蟲進(jìn)行抓取。
目前的做法是根據(jù)UserAgent進(jìn)行判斷,如果是真正的搜索引擎爬蟲,那么就放過;如果發(fā)現(xiàn)是偽造的就堅(jiān)決封殺。剩余的正常UserAgent的訪問則通過限制IP并發(fā)請(qǐng)求次數(shù)來限制。
那么問題就出現(xiàn)了,如何才能正確識(shí)別搜索引擎爬蟲的真?zhèn)?,其?shí)一些大型的搜索引擎商都已經(jīng)提供了相關(guān)的方法,那就是反向DNS驗(yàn)證(Reverse DNS Lookup)。
拿Google Spider舉個(gè)例子:
Google:www.google.com/support/webmasters/bin/answer.py?answer=80553
Yahoo:http://www.ysearchblog.com/2007/06/05/yahoo-search-crawler-slurp-has-a-new-address-and-signature-card/
Bing(MSN):cn.bing.com/community/blogs/search/archive/2006/11/29/search-robots-in-disguise.aspx
可喜可賀的是baidu的2個(gè)月前爬蟲也開始遵守這一“潛規(guī)則”,雖然沒有在任何網(wǎng)頁公開此消息,但經(jīng)過測試,實(shí)際上是可行的。(編選:網(wǎng)經(jīng)社)