互联网技术

转载 2013年12月06日 09:02:25

详解搜索引擎的工作原理

[ ] 来源: 小强的博客 评论: 4条评论 分享至:

百度权重查询词库网 网站监控 服务器监控SEO监控 手机游戏 iPhone游戏

一名合格的seo工程师,一定会了解搜索引擎的工作原理,对于百度和谷歌的原理几乎差不多,只是其中有些细节不同,比如分词技术等,因为国内搜索一般都是百度,所以我们以后的课程都会针对于百度,当然,基础类的只是同样适用于谷歌!

搜索引擎的工作原理其实很简单,首先搜索引擎大致分为4个部分,第一个部分就是蜘蛛爬虫,第二个部分就是数据分析系统,第三个部分是索引系统,第四个就是查询系统咯,当然这只是基本的4个部分!

下边我们来讲搜索引擎的工作流程:

什么是搜索引擎蜘蛛,什么是爬虫程序?

搜索引擎蜘蛛程序,其实就是搜索引擎的一个自动应用程序,它的作用是什么呢?其实很简单,就是在互联网中浏览信息,然后把这些信息都抓取到搜索引擎的服务器上,然后建立索引库等等,我们可以把搜索引擎蜘蛛当做一个用户,然后这个用户来访问我们的网站,然后在把我们网站的内容保存到自己的电脑上!比较好理解。

搜索引擎蜘蛛是怎样抓取网页的呢?

发现某一个链接 → 下载这一个网页 → 加入到临时库 → 提取网页中的链接 → 在下载网页 → 循环

首先搜索引擎的蜘蛛需要去发现链接,至于怎么发现就简单了,就是通过链接链接链接。搜索引擎蜘蛛在发现了这个链接后会把这个网页下载下来并且存入到临时的库中,当然在同时,会提取这个页面所有的链接,然后就是循环。

搜索引擎蜘蛛几乎是24小时不休息的(在此为它感到悲剧,没有假期。哈哈。)那么蜘蛛下载回来的网页怎么办呢?这就需要到了第二个系统,也就是搜索引擎的分析系统。

搜索引擎的蜘蛛抓取网页有规律吗?

这个问题问的好,那么搜索引擎蜘蛛抓取网页到底有规律吗?答案是有!

如果蜘蛛胡乱的去抓取网页,那么就费死劲了,互联网上的网页,每天都增加那么那么那么多,蜘蛛怎么可以抓取的过来呢?所以说,蜘蛛抓取网页也是有规律的!

蜘蛛抓取网页策略1:深度优先

什么是深度优先?简单的说,就是搜索引擎蜘蛛在一个页面发现一个连接然后顺着这个连接爬下去,然后在下一个页面又发现一个连接,然后就又爬下去并且全部抓取,这就是深度优先抓取策略。大家看下图

深度优先

在上图中就是深度优先的示意图,我们假如网页A在搜索引擎中的权威度是最高的,假如D网页的权威是最低的,如果说搜索引擎蜘蛛按照深度优先的策略来抓取网页,那么就会反过来了,就是D网页的权威度变为最高,这就是深度优先!

蜘蛛抓取网页策略2:宽度优先

宽度优先比较好理解,就是搜索引擎蜘蛛先把整个页面的链接全部抓取一次,然后在抓取下一个页面的全部链接。

宽度优先

上图呢,就是宽度优先的示意图!这其实也就是大家平时所说的扁平化结构,大家或许在某个神秘的角落看到一篇文章,告诫大家,网页的层度不能太多,如果太多会导致收录很难,这就是来对付搜索引擎蜘蛛的宽度优先策略,其实就是这个原因。

蜘蛛抓取网页策略3:权重优先

如果说宽度优先比深度优先好,其实也不是绝对的,只能说是各有各的好处,现在搜索引擎蜘蛛一般都是两种抓取策略一起用,也就是深度优先+宽度优先,并且在使用这两种策略抓取的时候,要参照这条连接的权重,如果说这条连接的权重还不错,那么就采用深度优先,如果说这条连接的权重很低,那么就采用宽度优先!

那么搜索引擎蜘蛛怎样知道这条连接的权重呢?

这里有2个因素:1、层次的多与少;2、这个连接的外链多少与质量;

那么如果层级太多的链接是不是就不会被抓取呢?这也不是绝对的,这里边要考虑许多因素,我们在后边的进阶中会降到逻辑策略,到时候我在详细的给大家说!

蜘蛛抓取网页策略4:重访抓取

我想这个比较好理解,就是比如昨天搜索引擎的蜘蛛来抓取了我们的网页,而今天我们在这个网页又加了新的内容,那么搜索引擎蜘蛛今天就又来抓取新的内容,这就是重访抓取!重访抓取也分为两个,如下:

1、全部重访

所谓全部重访指的是蜘蛛上次抓取的链接,然后在这一个月的某一天,全部重新去访问抓取一次!

2、单个重访

单个重访一般都是针对某个页面更新的频率比较快比较稳定的页面,如果说我们有一个页面,1个月也不更新一次。

那么搜索引擎蜘蛛第一天来了你是这个样子,第二天,还是这个样子,那么第三天搜索引擎蜘蛛就不会来了,会隔一段时间在来一次,比如隔1个月在来一次,或者等全部重访的时候在更新一次。

以上呢,就是搜索引擎蜘蛛抓取网页的一些策略!那么我们上边说过,在搜索引擎蜘蛛把网页抓取回来,就开始了第二个部分,也就是数据分析的这个部分。

数据分析系统

数据分析系统,是处理搜索引擎蜘蛛抓取回来的网页,那么数据分析这一块又分为了一下几个:

1、网页结构化

简单的说,就是把那些html代码全部删掉,提取出内容。

2、消噪

消噪是什么意思呢?在网页结构化中,已经删掉了html代码,剩下了文字,那么消噪指的就是留下网页的主题内容,删掉没用的内容,比如版权!

3、查重

查重比较好理解,就是搜索引擎查找重复的网页与内容,如果找到重复的页面,就删除。

4、分词

分词是神马东西呢?就是搜索引擎蜘蛛在进行了前面的步骤,然后提取出正文的内容,然后把我们的内容分成N个词语,然后排列出来,存入索引库!同时也会计算这一个词在这个页面出现了多少次。

5、链接分析

这一个步骤就是我们平时所做的做烦躁的工作,搜索引擎会查询,这个页面的反向链接有多少,导出链接有多少以及内链,然后给这个页面多少的权重等。

数据索引系统

在进行了上边的步骤之后,搜索引擎就会把这些处理好的信息放到搜索引擎的索引库中。那么这个索引库又大致分为以下两个系统:

正排索引系统

什么是正排索引?简单的说,就是搜索引擎把所有URL都加上一个编号,然后这个编号对应的就是这个URL的内容,包括这个URL的外链,关键词密度等等数据。

搜索引擎简单的工作原理概况

搜索引擎蜘蛛发现连接 → 根据蜘蛛的抓取策略抓取网页 → 然后交到分析系统的手中 → 分析网页 → 建立索引库


BAT解密:互联网技术发展之路(1) - 技术发展的驱动力

互联网技术发展之路(1) - 技术发展的驱动力互联网行业是一个快速发展、快速变化的行业,新的业务、新的机会层出不穷,新的技术如雨后春笋般冒出,NoSQL、大数据、云、Node.js、Docker等,无...
  • yah99_wolf
  • yah99_wolf
  • 2015年04月08日 11:57
  • 11330

大型互联网技术架构1-架构概述

上图坐标指向硅谷,最近开始研究互联网分布式架构,风口浪尖,高大上;特与极客朋友们分享,共勉。 互联网架构 近些年来,互联网的高速发展,大数据时代,Booming Years,我们作为技术极客,需要跟得...
  • ErixHao
  • ErixHao
  • 2016年06月19日 08:48
  • 4192

互联网公司技术博客

国内技术团队博客 1  http://tech.meituan.com/ 美团点评技术团队 2  http://fe.meituan.com/   美团前端技术团队 3  http://tech...
  • huaweitman
  • huaweitman
  • 2017年01月18日 14:43
  • 802

移动互联网领域当前的主流技术及其社会需求调查报告

一、移动互联网领域当前的发展状况        移动互联网把互联网放到人们的手中,实现24小时随身在线的生活。信息社会许给人类最大的承诺——随时随地随身查找资讯、处理工作、保持沟通、进行娱乐,从梦想...
  • eric_giant
  • eric_giant
  • 2015年12月06日 00:49
  • 1642

BAT解密:互联网技术发展之路(6)- 服务层技术剖析

在系列文章的第2篇“BAT解密:互联网技术发展之路(2)- 业务如何驱动技术发展”中我们深入分析了互联网业务发展的一个特点:复杂性越来越高。复杂性增加的典型现象就是系统越来越多,当系统的数量增加到一定...
  • yah99_wolf
  • yah99_wolf
  • 2015年10月13日 15:51
  • 18877

互联网服务端技术——如何学(下A)

互联网服务端技术难么?怎么学呢?老王带你一起经历不一样的互联网技术~(分布式篇A)...
  • zgwangbo
  • zgwangbo
  • 2016年05月09日 08:02
  • 2878

移动互联网的架构设计浅谈一

一,图片体验的优化。        在手机上显示图片,速度是一个非常重要的体验点,试想,如果您打开一个网站,发现里面的图片一直显示失败或者是x,稍微做得好一点的,可能是一个不消失的loading或者是...
  • tenfyguo
  • tenfyguo
  • 2014年06月24日 15:34
  • 8940

创业互联网公司如何搭建自己的技术框架

创业互联网公司 框架搭建 技术选型
  • three_man
  • three_man
  • 2016年08月18日 15:32
  • 31833

互联网开发人员需知的“108”个技术栈

IT技术百货 2017-06-05 21:49 在软件开发行业扑腾了快三年了,多少积累或者了解了一些技术,整理总结一下,与诸位共享,欢迎各位补充,评论! 数据层 数据层主要作用是存储数据...
  • u011277123
  • u011277123
  • 2017年06月07日 17:27
  • 1668

大型互联网技术架构2 - 运营/技术看运维?

上图是通往硅谷的大道么?令人向往。我们继续互联网分布式技术架构。 运维作为大型互联网的基石,不可谓不重要,简直是考验一个互联网公司的运营+技术实力的时候。一些大型知名互联网公司要求运维做到4个9以上的...
  • ErixHao
  • ErixHao
  • 2016年06月21日 09:37
  • 2561
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:互联网技术
举报原因:
原因补充:

(最多只允许输入30个字)