2009年4月4日星期六

屏蔽百度爬虫的方法

  在百度C2C产品“百度有啊”即将上线的时候,淘宝网站曾经屏蔽百度搜索爬虫,禁止百度搜索引擎抓取淘宝网站的网页内容,淘宝官方的解释是“杜绝不良商家欺诈”。

  在技术层面,淘宝屏蔽百度的方法是,在网站的robots.txt文件中加上如下内容:

User-agent: Baiduspider
Disallow: /

  但实际上这种方法并不能完全屏蔽百度的爬虫,至今在百度上输入site:taobao.com还是可以看到内容,要不要索引网站,还是由百度说了算,要是遵守robots协议,那才不会索引,因此要想完全屏蔽百度的爬虫,需要在.htaccess中加入一些语句才可以,下面介绍两种方法。

  方法1:

RewriteEngine on
RewriteCond %{HTTP_USER_AGENT} ^Baiduspider [NC]
RewriteRule .* - [F]

  方法2:

SetEnvIfNoCase User-Agent "^Baiduspider" bad_bot

<Limit GET POST>
Order Allow,Deny
Allow from all
Deny from env=bad_bot
</Limit>

  当然,对于普通中文网站来说,还是不建议屏蔽百度的爬虫,通常情况下做一些大型的英文网站,才有必要这么做,以节省流量。