怎么让搜索引擎爬虫抓取自己的网站
我们经常说做优化要让搜索引擎从种子站点开始抓取,基于搜索引擎的蜘蛛型结构,这种非线性的网页组织结构,就会出现一个抓取顺序的问题,这种抓取顺序的策略必须保证尽可能地抓取所有网页。
操作方法
- 01
一般来说,爬虫选择抓取蝴蝶型左边的结构为抓取出发点,典型的如sina和sohu这样的门户网站的主页,每次抓取网页之后分析其中的URL,这种字符串形式的链接是指向其他网页的URL,它们指引着爬虫抓取其他网页。基于这点我们可以初步理解引擎先左后右,先上后下的抓取原因了。
- 02
深度优先的策略,深度优先的遍历策略类似家族继承策略,典型的如封建帝王的继承,通常为长子,如果长子去世,长孙的优先级大于次子的优先级,这点大家多多仔细分析琢磨下,如果长子和长孙都已经去世,那么次子继承,这种继承上的优先关系也称深度优先策略。
- 03
宽度优先的策略,宽度优先我们又称为广度优先,或者叫层次优先,例如:我们在给祖辈和父辈还有平辈敬茶的时候先给最年长的祖辈,其次为父辈,最后为平辈,在爬虫抓取上也采取了这样的策略。基于使用宽度有限的策略主要原因一下几点:
- 04
首页重要的网页往往离种子比较近,例如我们打开新闻站的时候往往是最热门的新闻,随着不断的深入冲浪,PV值增加,所看到网页重要性越来越低。万维网的实际深度最多能达到17层,到达某个网页的路径深入很多,但是总存在一条很短的路径。
- 05
宽度优先有利于多爬虫的合作抓取,这些都是是根据前辈的资料分析和IIS日志分析,暂且认为,有不同见解,欢迎讨论交流,多爬虫合作通常先抓取站内连接,遇到站外连接然后开始抓取,抓取的封闭性很强。
- 06
链接的优化,避抓取链接的死循环,同时也避免该抓取的资源没有得到抓取,浪费大量的资源做无用功。网页抓取优先策略,网页的抓取优先策略也称为面页选择问题,通常抓取重要性的网页,这样保证有限资源,爬虫,服务器负载。尽可能的照顾到重要性高的网页,这点应该很好理解。那么哪些网页才是重要性的网页呢,网页的重要性判断因素很多,主要有链接欢迎度,链接的重要度和平均深度链接,网站质量,历史权重等主要因素。
- 07
链接的欢迎度主要是由反向链接的数量和质量决定,我们定义为IB。链接的重要度,是一个关于URL字符串的函数,仅仅考察字符串本身,比如认为.com、home的URL重要度比.cc和map较高,这里是比方不是绝对,就如我们通常默认首页index.XX一样,要定义其他名称也可以,另外排名是个综合因素,com的不一定排名就好,只是其中一个很小的因素而已),我们定义为IL。
- 08
平均连接深度,个人鄙见,根据上面所分析的宽度优先的原则计算出全站的平均链接深度,然后认为距离种子站点越近重要性越高。我们定义为ID。ID由宽度优先的遍历规则保证,因此不作为重要的指标函数,为了保证重要性高的网页被抓取,所以,这样的抓取完全是合理,科学的。