Spider: 以遵守robots.txt协议为荣 以匿名盗抓为耻

本文介绍了四种不同类型的网络爬虫:真名真姓并遵循robots.txt协议的爬虫如GoogleBot;真名真姓但不遵循robots.txt协议的爬虫如iAskSpider;匿名且不遵循robots.txt协议的爬虫;以及伪装型爬虫。文中详细分析了各类爬虫的行为特点,并提供了识别方法。

按照是否匿名和是否遵循robots.txt协议有4种蜘蛛:
1 真名真姓,遵循robots.txt 协议。代表:GoogleBot BaiduSpider MSNBot Yahoo!Slurp 等
2 真名真姓,不遵循robots.txt协议。代表:iAskSpider SohuAgent wget
3 匿名,不遵循robots.txt协议。代表:大量的匿名蜘蛛,例如 OutfoxBot
4 伪装:不遵循robots.txt协议。代表:中搜,各种SpamBot,

如何识别这四类蜘蛛呢?通过HTTP协议和是否支持mod_gzip都很好的特征。做一个知荣知耻的spider很难吗?事实上:比较难。没有一定的技术积累,spider就和spambot一样。详细分析附后:

先看看第一类:
GoogleBot: 除了遵循robots.txt外,也支持HTTP 1.1压缩,可以非常有效的节省带宽;

66.249.72.165 - - [14/Nov/2006:00:09:35 +0800] "GET /blog/archives/000900.html HTTP/1.1" 200 8437 "-" "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)" 66.249.72.165.321101163434175289
这个页面的原始大小是34211字节。

BaiduSpider:BaiduSpider不支持HTTP 1.1压缩,但使用大量使用了HEAD请求来校验文件更新,避免了很多网络传输;百度的蜘蛛支持Disallow命令,但是是抓了再删,而其他引擎是从请求队列中删除,根本不会抓取。
202.108.22.181 - - [14/Nov/2006:20:49:16 +0800] "GET /blog/atom.xml HTTP/1.1" 304 - "-" "Baiduspider+(+http://www.baidu.com/search/spider.htm)"
202.108.22.181 - - [14/Nov/2006:21:07:15 +0800] "GET /cgi-bin/mt/mt-comments.cgi HTTP/1.1" 200 2076 "-" "Baiduspider+(+http://www.baidu.com/search/spider.htm)"
202.108.22.181 - - [14/Nov/2006:21:07:17 +0800] "GET /blog/archives/000713.html HTTP/1.1" 200 31220 "-" "Baiduspider+(+http://www.baidu.com/search/spider.htm)"
202.108.22.144 - - [14/Nov/2006:22:54:22 +0800] " HEAD /blog/archives/000642.html HTTP/1.1" 200 0 "-" "Baiduspider+(+http://www.baidu.com/search/spider.htm)"

Yahoo!Slurp: 只支持HTTP 1.0,也没用HEAD来校验更新,有很多报道说雅虎的蜘蛛抓取强度过高,但是Yahoo!Slurp很遵守规矩的,而且现在支持 Crawl-delay命令:可以控制抓取频度。

第二类的和第三类的还好办,至少方便通过web服务器通过agent判断进行控制。最烦的就是第四类:不但无法防止,还给日志统计分析带来了很多麻烦。

但如果服务上安装了mod_gzip支持,就可以区分出了:因为机器人对HTTP 1.1支持到HTTP压缩还是有一定难度的,如果来自某个IP有大量的MSIE 访问,却是只支持HTTP 1.0请求或者支持HTTP 1.1但又不支持压缩那个就有可能是伪装spam了。

中搜多年以来一直伪装成Mozilla/4.0 (compatible;MSIE 5.5;Windows NT 5.0),从中搜上的CrawledBy结果就可以看出来:

ipfw - phpMan
Apache/1.3.37 (Unix) mod_perl/1.29 PHP/4.4.2 Under GNU General Public License 2006-10-25 11:23 @202.108.1.6 CrawledBy Mozilla/4.0 (compatible;MSIE 5.5;Windows NT 5.0)
www.chedong.com/phpMan.php/man/ipfw 上的更多结果 2006-10-25

做一个知荣知耻的spider很难吗?

作者: 车东 发表于:2006-11-24 11:11 最后更新于:2007-04-15 19:04
版权声明:可以转载,转载时请务必以超链接形式标明文章 的原始出处和作者信息及 本版权声明

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值