搜索引擎之爬虫

本文约 2300 字,建议阅读时间为 5 分钟,理解为主。此处,强烈建议查看上一篇《搜索引擎之技术架构》。

上一篇《搜索引擎之技术架构》,我们讲述了搜索引擎的概念、种类,和技术架构,我们用一张图回顾一下。

搜索引擎技术架构

本章,我们重点来学习一下图上左上角的爬虫,主要包括五个方面的内容:

爬虫的概念

爬虫的分类

爬虫的抓取策略

爬虫的更新策略

爬虫的部署特点

1 爬虫的概念

爬虫,又称蜘蛛、Spider、机器人、Bot等(以下统一称为“爬虫”),是搜索引擎用来抓取互联网网页的软件程序,处于整个搜索引擎业务和技术的最上游模块。

只有爬虫抓取的网页才会在参与之后的内容和链接的处理,但不会爬虫抓取的网页也有可能出现在搜索引擎结果之中,比如,淘宝网禁止百度的爬虫抓取其内容,但域名层级也会参与最终的网页排序,最终展示给用户。

2 爬虫的种类

按照抓取对象的侧重点,可以将爬虫分为以下几类:

1)批量型爬虫,BatchCrawler

批量型爬虫有较明确的抓取范围及抓取目标,目标可能是一段时间,也可能是一批网页,一旦完成要求的抓取要求,则爬虫就会停止抓取进程,算是完成了此阶段批量的抓取任务。

2)增量型爬虫,IncrementalCrawler

不同于批量型爬虫,增量型爬虫会持续不断地抓取网页,并且要对新抓到的网页进行更新。又称“通用爬虫”,在搜索业务内,如百度、Google采用的都是增量型爬虫。

3)垂直型爬虫,FocusCrawler

垂直型爬虫关注在某一个固定的专题内容或者固定的行业网页。在互联网行业,存在千万种行业分类,垂直型爬虫要明确爬虫哪方面的内容,进而对此行业内进行抓取。一般垂直型搜索引擎,如携程,就会重点抓取出行方面的数据,不会考虑到食品类别的网页。

以上三种爬虫,技术难度最大最复杂的当属增量型爬虫,也是Google、百度等一般搜索引擎采用的爬虫类型。

与批量型相比,增量型爬虫需要对能发现的任务网页进行抓取,而不是关注在某一范围或目标上。与垂直型相比,增量型爬虫需要对全网内容进行抓取,而不仅只抓取某一专题内容。

此外,增量型爬虫还要考虑到所有抓取下来内容的更新,一遍遍地抓取,更新内容,具体策略见下文。

3 爬虫的抓取策略

互联网上,所有的网页可以分为四种:

网页分类

已下载网页,即已被爬虫抓取下来的网页;

待下载网页,即爬虫将要抓取的网页;

可知网页,即爬虫知道存在但暂时不会去抓取的网页;

不可知网页,即暗网内容,爬虫都不知道存在的网页;

爬虫则是对这四类页面进行抓取的,具体会根据不同的策略进行不同的抓取方式。

1)深度优先策略,DepthFirst

深度优先策略,指的是爬虫根据一个页面顺着抓取下去,即一条路走到黑。

深度优先

如爬虫从第1个页面出发抓取,沿着2-3-4-5,抓取结束之后,再去抓取页面6-7,再去抓取8-9-10。

2)广度优先策略,BreadthFirst

广度优先策略,指的是爬虫在同一个等级上进行抓取,直到同等级页面都被抓取完毕之后,再去抓取下一层级的页面。

广度优先

如上图,广度优先策略的抓取顺序为横向的2-3-4,然后是下一层级的5-6-7-8。

3)大站优先策,LargerSite First

大站优先策略就很简单粗暴了,以站点为单位,表示这不同的重要性,对爬虫来说,会优先且更高频率地去抓取大站。

以上,三种基本的爬虫抓取策略,各有优缺点。综合而言,广度优先的策略不太理想,因为如果只在一个层级抓取,永远达到不了一些网页,而深度优先的策略,总能根据网页之间的链接关系达到其他的网页。

在实际应用中,一般都是多种策略混合使用,比如从待抓取列表中,优先抓取大站数据,在一定广度范围内深度抓取等。

4 爬虫的更新策略

在爬虫完成第一遍抓取之后,还要考虑到再次抓取的情况,因为网页的内容都是变化的,如不能及时抓取,那么用户看到的可能还是很久之前的信息,就没有意义了。

爬虫一般会根据以下三个方面进行更新:

历史更新频率

用户体验

网页类型

1)历史更新频率

搜索引擎爬虫在爬虫某些网页时,会判断网页的主体内容是否发生了变化,如果发现网页内容经常更新,就会增加抓取网页的几率。比如一些时事类的新闻版块,分分钟会更新出许多的内容,那么爬虫也在以秒为单位进行实时的抓取。但如果爬虫尝试抓取的时候,发现网页内容都是一成不变,则减少抓取频率,甚至不再对其抓取。在一个动态调整中,爬虫会发现最合理的抓取规律。

2)用户体验

互联网上有海量的页面和数据,但搜索引擎最关心的是用户需要的那一小部分。在用户输入查询词之后经常点击的网页,爬虫则会认为其实用户体验良好的页面,增加对其的抓取。

3)网页类型

不同的网页更新频率是不同的,一般网页分为首页、分类页、内容页。爬虫抓取首页、分类页的几率比内容页要高,因为爬虫会认为内容页的内容更新频率小,而首页和分类页因为层级浅,且更新频率高,则会受到爬虫青睐。

5 爬虫的部署特点

搜索引擎为了满足用户的需求,需要大量的爬虫对互联网上的网页进行抓取。对Google或者百度来说,在全球范围内配置了很多数据中心,比如Google在香港的数据中心,数据中心中配备了许多服务器,服务器上运行着许多爬虫程序。可以理解为,有许多机房,机房有许多台电脑,电脑上运行着许多程序,对互联网上的网页进行着抓取。

图为美国爱荷华州康瑟尔布拉夫斯的谷歌数据中心,类似于咱们超算中心,超酷的!

数据中心

综上所述,搜索引擎之爬虫为大家讲解了爬虫的概念、种类、抓取策略、更新策略、部署特点,让大家对爬虫有个宏观方面的认识。

当然,若大家有自己网站的话,还可以采取不同的策略来对爬虫进行限制,比如设置Robots.txt 文件禁止Bing搜索引擎的爬虫抓取,比如设置meta robot 信息进行单个页面的限制等。此方面的内容不赘述,欢迎大家和我沟通针对于爬虫可进行的网站优化。

此外,我会陆续给大家更新搜索引擎系列文章,展开讲述不同阶段不同步骤,搜索引擎做了什么,为什么做,怎么做的。

公众号:产品美景,只讲产品和思考干货的地方,欢迎随时交流想法 ~

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 159,569评论 4 363
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,499评论 1 294
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 109,271评论 0 244
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 44,087评论 0 209
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,474评论 3 287
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,670评论 1 222
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,911评论 2 313
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,636评论 0 202
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,397评论 1 246
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,607评论 2 246
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,093评论 1 261
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,418评论 2 254
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,074评论 3 237
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,092评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,865评论 0 196
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,726评论 2 276
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,627评论 2 270

推荐阅读更多精彩内容