有时候不希望搜索引擎抓取某些内容可以写robots.txt文件放到根目录,按理蜘蛛会首先读取这个文件,按照robots协议抓取相应的内容。但是许多站长们发现,蜘蛛并不太遵守这个协议。
为验证这个问题,做了测试后发现,如果蜘蛛已经抓取并有索引、快照了,这个时候再写robots.txt文件就不遵守这个协议了,一般在robots中禁止抓取文件夹如下,
Disallow:/about/
还不放心,在页面里增加<meta>声明
<meta name="robots" content="noindex,follow" />
这个声明的意思是告诉蜘蛛不建立索引,可以沿着路径继续抓取内容。以为这就能让已经收录的快照删除了,有网友说这需要等待,时间都说不好。
百度有个规则是判断页面质量,如果多个页面重复内容过多,会被降权,甚至移出索引库。等待很长世间才会被移出索引库,一般调整过的网站的收录量会减少,但不是大幅度减少,是因为有些垃圾页面在算法更新后被移出索引库而已,这对于正规SEO做法的站长来说是好事,垃圾页面会影响到网站的排名。
robots和nofollow标签都能控制蜘蛛抓取范围,而两个的用法不尽相同。
简单说,nofollow主要是为了集中某个页面的权重,而robots.txt文件是控制整个网站的蜘蛛抓取范围。那么问题来了,为什么很多时候蜘蛛不遵守我们的robots协议呢?(一些垃圾蜘蛛是完全不遵守robots协议的)我们说的蜘蛛主要指百度蜘蛛与谷歌蜘蛛。
1、书写错误
robots.txt文件的书写格式是一行一行的写,不能连着写,如
User-agent: * Disallow: /cgi-bin/ Disallow: /tmp/
2、正确书写
每个记录都需要另起一行,每个记录里不允许空行,空行用来分割不同的记录。如;
User-agent: *
Disallow: /cgi-bin/
Disallow: /tmp/
很多时候搜索引擎抓取了你 robots.txt 文件不允许抓取的内容不是因为机器人不遵守,而是从抓取到索引到展现这个过程需要一段时间,当搜索引擎已经抓取了,你才更新,那么之前抓取的是不会那么快删掉的,删除周期并不规律,一般是算法更新后生效的情况多些。
|