怎么屏蔽百度蜘蛛(Baiduspider)抓取网站
百度蜘蛛抓取我们的网站是希望将我们的网页收录到它的搜索引擎里,未来当用户搜索时,能为我们带来一定的SEO流量。当然我们并不是希望搜索引擎什么都抓取。
所以,这时我们只希望我们希望在搜索引擎被搜索到的内容进行抓取。像用户隐私、后台信息等都不希望搜索引擎被抓取和收录。解决这样的问题最好的方式有两种,如下:
robots协议文件屏蔽百度蜘蛛抓取
robots协议是一个放在网站根目录下协议文件,可以通过URL地址:http://你的域名/robots.txt进行访问。当百度蜘蛛抓取我们网站时,会先访问这个文件。因为里面告诉了蜘蛛哪些可以抓取,哪些不可以抓取。
robots协议文件的设置比较简单,可以通过User-Agent、Disallow、Allow这三个参数进行设置。
●User-Agent:对不同搜索引擎的声明;
●Disallow:不允许抓取的目录或页面;
●Allow:允许抓取的目录或页面,一般可以省略不写,因为你不写什么是不可以抓的那就都是可以抓的;
下面我们来看一个示例,场景是我不希望百度抓取我网站所有的css文件,data目录、seo-tag.html页面
User-Agent: Baidusppider
Disallow: /*.css
Disallow: /data/
Disallow: /seo/seo-tag.html
如上,user-agent声明的蜘蛛名称,这个意思也就是说,针对百度蜘蛛。下面不能抓取”/*.css”,首先前面的/指的是根目录,也就是你的域名。*是通配符,代表任意内容。其意思就是所有文件,以.css结尾的都不能抓取。下面两个你自己体会吧。逻辑是一样的。
如果你想检测自己最后设置的robots文件对不对,可以访问这篇文章《检查robots是否正确的工具介绍》,有详细的工具能够检测你的设置。
通过403状态码,限制内容输出,屏蔽蜘蛛抓取。
403状态码,是http协议中一个网页返回状态码。当搜索引擎碰到403状态码时,就知道这类页面是又权限限制的。我是不能访问的。例如需要登录才能查看的内容,搜索引擎本身是不会登录的,那么你返回403的同时,他也知道了这都是权限设置页面,无法读取内容。自然也就不会收录。
返回403状态码的同时,应该有一个类似404页面的页面。提示用户或者蜘蛛这类页面想要做什么才能访问。两者缺一不可。你只有提示页面,状态码返回200,那对于百度蜘蛛就是大量的重复页面了。有403状态码但返回不同的内容。这也不是很友好。
最后针对robot协议,还想再补充一点:“现在搜索引擎会通过你网页的排版、布局来识别你网页的体验友好度,如果屏蔽了css文件、布局相关的js文件的抓取,那么搜索引擎就不知道你的网页布局是好是坏了。所以不建议屏蔽这些内容不让蜘蛛抓取”。
好了,今天的分享就到这里,希望能够对你有所帮助,当然如上的两个设置除了针对百度蜘蛛外,对所有的蜘蛛都有效果的。设置时请谨慎。