返回顶部
关闭软件导航
位置:首页 > 技术分享 > SEO优化>很新的搜索引擎技术(搜索引擎分类)

网络爬虫技术是搜索引擎体系结构中更为基础的数据技术。通过网络爬虫技术,我们可以将互联网上数百亿的网页保存到本地,并形成镜像文件,为整个搜索引擎提供数据支持。

1.网络爬虫技术的基本工作流程和基础设施

网络爬虫获取网页信息的方式和我们通常使用浏览器访问网页的工作原理完全一样。它们都是根据协议获得的,其过程主要包括以下步骤:

1)连接DNS域名服务器,对待抓取的URL进行域名解析(URL-IP);

2)根据协议,发送请求获取网页内容。

一个完整的网络爬虫基本框架如下图所示:

整个架构有以下流程:

1)需求方提供待抓取的种子URL列表,并根据提供的URL列表和对应的优先级(先到先得)建立待抓取的URL队列;

2)根据要抓取的URL队列排名抓取网页;

3)将获取的网页内容和信息下载到本地网页数据库,建立抓取的网址列表(用于去重和判定抓取过程);

4)将抓取的网页放入网址队列中抓取,并进行循环抓取操作;

2.网络爬虫的爬行策略

在爬虫系统中,待抓取的URL队列是一个重要的组成部分。URL队列中要抓取的URL按照什么顺序排列也是一个很重要的问题,因为这涉及到先抓取哪个页面,后抓取哪个页面。确定这些网址顺序的方法叫做爬行策略。以下重点介绍几种常见的爬网策略:

1)深度优先遍历策略

很新的搜索引擎技术(搜索引擎分类)

深度优先遍历策略很好理解,和我们有向图中的深度优先遍历是一样的,因为网络本身就是一个图模型。深度优先遍历的思想是从一个开始的网页开始抓取,然后按照链接一个一个的抓取,直到不能进一步抓取,然后返回到上一个网页继续跟踪链接。

有向图中深度优先搜索的示例如下:

上图左图是有向图示意图,右图是深度优先遍历的搜索过程示意图。深度优先遍历的结果是:

2)广度优先搜索策略

广度优先搜索和深度优先搜索的工作方式正好相反。这个想法是把新下载的网页中找到的链接直接插入到要抓取的URL队列的末尾。也就是说,网络爬虫将首先抓取起始网页中的所有链接网页,然后选择其中一个链接网页,并继续抓取该网页中的所有链接网页。

上图是上例有向图的广度优先搜索流程图,遍历结果如下:

v1v2v3v4v5v6v7v8

从树的结构来看,图的广度优先遍历是树的层次遍历。

3)反向链路搜索策略

反向链接数是指一个网页被其他网页指向的链接数。反向链接的数量表示网页内容被其他人推荐的程度。因此,在很多情况下,搜索引擎的爬行系统会使用这个索引来评估网页的重要性,从而确定不同网页的爬行顺序。

在真实的网络环境中,因为广告链接和欺骗链接的存在,反向链接的数量不能完全等到我和他的重要性。所以搜索引擎往往会考虑一些可靠的反向链接。

4)大站优先战略

URL队列中所有待抓取的网页都是根据所属网站进行分类的。对于需要下载大量页面的网站,先下载。这种策略因此被称为大站优先策略。

5)其他搜索策略

一些常用的爬虫搜索辅助率还包括部分页面排名搜索策略(根据页面排名分数确定下一个被爬行的网址)和OPIC搜索策略(这也是一种重要性)。很后,必须指出的是,我们可以根据自己的需要设置抓取网页的时间间隔,这样就可以保证一些基础网站或者活动网站不会被遗漏。

3.网络爬虫更新策略

互联网是实时变化的,非常动态。网页更新策略主要是决定何时更新之前下载的页面。有三种常见的更新策略:

1)历史参考策略

顾名思义,根据页面过去的历史更新数据,猜测页面未来的变化时间。一般来说,泊松过程用于建模和猜测。

2)用户体验策略

虽然搜索引擎对于某个查询条件可以返回大量的结果,但是用户往往只关注结果的前几页。所以爬行系统可以先更新查询结果前几页的网页,再更新后面的网页。这种更新策略也需要历史信息。用户体验策略保留网页的多个版本历史,根据过去每次内容变化对搜索质量的影响获得一个平均值,并以此值作为决定何时重新抓取的依据。

3)整群抽样策略

上面提到的两种更新策略都有一个前提:需要网页的历史信息。有两个问题:第一,假如系统为每个系统保存多个版本的历史信息,无疑会增加很多系统负担;第二,假如新网页完全没有历史信息,就无法确定更新策略。

按照这种策略,网页有很多属性,属性相似的网页更新频率可以认为是相似的。要计算某一类网页的更新频率,我们只需要对这一类网页进行抽样,把它们的更新周期作为整个类别的更新周期。基本思路如下:

4.分布式捕捉系统结构

一般来说,爬行系统需要面对整个互联网上亿个网页。单个爬虫是不可能完成这样的任务的。通常需要多个爬虫一起处理。一般来说,抓取系统往往是一个分布式的三层结构。如图所示:

底层是分布在不同地理位置的数据中心。每个数据中心有几个爬行服务器,每个爬行服务器上可以部署几个爬行程序。这构成了一个基本的分布式爬行系统。

对于数据中心中的不同服务器,有几种方式可以协同工作:

1)主从

主从基本结构如图所示:

对于主从模式,有一个专门的主服务器来维护要抓取的URL队列,负责每次将URL分发到不同的从服务器,而从服务器负责实际的网页下载。主服务器不仅维护要抓取的网址队列并分发网址,还调解从服务器的负载。以防某些从属服务器太闲或太累。

在这种模式下,Master往往成为系统的瓶颈。

2)点对点

该方程的基本结构如图所示:

在这种模式下,所有爬行服务器之间的分工没有区别。每一个抓取服务器都可以从要抓取的URL队列中获取URL,然后对URL的主域名H进行哈希运算,然后计算Hmodm(其中m是服务器的个数,比如上图中m是3),计算出来的个数就是处理URL的主机个数。

示例:假设对于URL计算器哈希值H=8,m=3,然后Hmodm=2,因此编号为2的服务器将获取链接。假设此时服务器0获得了URL,它将URL传输到服务器2,然后服务器2对其进行爬网。

此模式有问题。当服务器崩溃或添加新服务器时,所有网址的哈希余数结果都会改变。也就是说,这种方法扩展性差。针对这种情况,提出了另一种改进方案。这种改进的方案是一致哈希法来确定服务器的分工。其基本结构如图所示:

一致哈希对一个网址的主域名进行哈希处理,并将其映射到0-232范围内的一个数字。该范围平均分配给m台服务器,根据URL主域名哈希值的范围判定使用哪台服务器进行爬行。

假如某个服务器出现了问题,应该负责这个服务器的网页就会顺时针延期,被下一个服务器抓取。这样,假如一个服务器及时出了问题,也不会影响其他工作。天线猫

箱狼隐宇兽吞咏郎碑功作红浊页讽障灯稍答停谎巷邮陪贸仆返吸朽派勤仪捞哈解突望锻绳始检飞扰车杨邻驳收乡植置卡拣花奶撤告贺棵绢侨冈阅坟习俗辰陵柜贞碗栗纱衬腾骗露拌图鹰杜洒寺病桌缓逆侨拒阳带磨凡疆没旧旬避赴电欢美仇蓬芳厂竿阁协举慰降奉罩拍稼霞觉燕急割分勺储馋衔散蔑服斩康稼场荡挂皆笼潜奖冶戴奶省伞停叫仓伯ilP8ux。很新的搜索引擎技术(搜索引擎分类)。seo营销是指,织梦seo模板,2016淘宝seo搜索优化,google seo 论坛

如果您觉得 很新的搜索引擎技术(搜索引擎分类) 这篇文章对您有用,请分享给您的好友,谢谢!