029-81773686

宏 · 新闻

当前位置: 首页 > 宏 · 新闻行业视野  

如何提高动态网站的抓取效率?

2015.10.16

    最近页面抓取的相当不理想,短短的三个月内抓取的还没有上两位数,真的是对于这个抓取的相当费解,其他的网站无论从抓取量及外链上都有一定的提升,但是总有一两个站是相当不如意。


    我们都知道,robots协议(也称为爬虫协议、机器人协议等)的全称是“网络爬虫排除标准”(Robots Exclusion Protocol),网站通过Robots协议告诉搜索引擎哪些页面可以抓取,哪些页面不能抓取。Robots协议的本质是网站和搜索引擎爬虫的沟通方式,用来指导搜索引擎更好地抓取网站内容。


    百度官方是推荐所有的网站都使用robots文件,以便更好地利用蜘蛛的抓取。其实robots不仅仅是告诉搜索引擎哪些不能抓取,更是网站优化的重要工具之一。


    robots文件实际上就是一个txt文件。其基本的写法如下:

    User-agent: * 这里的*代表的所有的搜索引擎种类,*是一个通配符 

    Disallow: /admin/ 这里定义是禁止爬寻admin目录下面的目录  

    Disallow: /require/ 这里定义是禁止爬寻require目录下面的目录  

    Disallow: /ABC/ 这里定义是禁止爬寻ABC目录下面的目录  

    Disallow: /cgi-bin/*.htm 禁止访问/cgi-bin/目录下的所有以".htm"为后缀的URL(包含子目录)。  

    Disallow: /*?* 禁止访问网站中所有的动态页面  

    Disallow: /.jpg$ 禁止抓取网页所有的.jpg格式的图片Disallow:/ab/adc.html 禁止爬取ab文件夹下面的adc.html文件。  

    Allow: /cgi-bin/ 这里定义是允许爬寻cgi-bin目录下面的目录  

    Allow: /tmp 这里定义是允许爬寻tmp的整个目录  

    Allow: .htm$ 仅允许访问以".htm"为后缀的URL。  

    Allow: .gif$ 允许抓取网页和gif格式图片


    在网站优化方面,利用robots文件告诉搜索引擎哪些是重要的内容,不重要的内容均推荐用robots文件来禁止抓取。不重要的内容的典型代表:网站的搜索结果页面。


    对于静态网站来说,我们可以利用Disallow: /*?*来禁止动态页面抓取。但对于动态网站来说,就不能简单地这样做了。不过对于动态网站的站长来说,也无需过于担心,搜索引擎现在可以正常地抓取动态页面。那么在写的时候,就要注意了,我们可以具体到搜索文件的名称来写。比如你的站是search.ph?后面一大串,那么可以这样写:


    Disallow: /search.php?*


    这样就可以屏蔽搜索结果页面了,写好了可以到百度站长平台检测robots一下,看看有没有错误!可以输入网址检测一下,是不是正常生效了。 


精彩案例