精通Python网络爬虫:核心技术、框架与项目实战.2.2 搜索引擎核心-阿里云开发者社区

开发者社区> 华章计算机> 正文

精通Python网络爬虫:核心技术、框架与项目实战.2.2 搜索引擎核心

简介:
+关注继续查看

2.2 搜索引擎核心


爬虫与搜索引擎的关系是密不可分的,既然提到了网络爬虫,就免不了提到搜索引擎,在此,我们将对搜索引擎的核心技术进行一个简单的讲解。

图2-2所示为搜索引擎的核心工作流程。首先,搜索引擎会利用爬虫模块去爬取互联网中的网页,然后将爬取到的网页存储在原始数据库中。爬虫模块主要包括控制器和爬行器,控制器主要进行爬行的控制,爬行器则负责具体的爬行任务。

然后,会对原始数据库中的数据进行索引,并存储到索引数据库中。

当用户检索信息的时候,会通过用户交互接口输入对应的信息,用户交互接口相当于搜索引擎的输入框,输入完成之后,由检索器进行分词等操作,检索器会从索引数据库中获取数据进行相应的检索处理。

用户输入对应信息的同时,会将用户的行为存储到用户日志数据库中,比如用户的IP地址、用户所输入的关键词等等。随后,用户日志数据库中的数据会交由日志分析器进行处理。日志分析器会根据大量的用户数据去调整原始数据库和索引数据库,改变排名结果或进行其他操作。

 

图2-2 搜索引擎的核心工作流程

以上就是搜索引擎核心工作流程的简要概述,可能大家对索引和检索的概念还不太能区分,在此我为大家详细讲一下。

简单来说,检索是一种行为,而索引是一种属性。比如一家超市,里面有大量的商品,为了能够快速地找到这些商品,我们会将这些商品进行分组,比如有日常用品类商品、饮料类商品、服装类商品等组别,此时,这些商品的组名我们称之为索引,索引由索引器控制。如果,有一个用户想要找到某一个商品,那么需要在超市的大量商品中寻找,这个过程,我们称之为检索。如果有一个好的索引,则可以提高检索的效率;若没有索引,则检索的效率会很低。比如,一个超市里面的商品如果没有进行分类,那么用户要在海量的商品中寻找某一种商品,则会比较费力。

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
《仿人机器人原理与实战》一2.6 行为链搜索关键词
本节书摘来华章计算机《仿人机器人原理与实战》一书中的第2章 ,第2.6节,作者布莱恩·伯杰伦(Bryan Bergeron) 托马斯B. 塔尔博特(Thomas B. Talbot) 王伟 魏洪兴 刘斐 译, 更多章节内容可以访问云栖社区“华章计算机”公众号查看。
947 0
python模块介绍- SocketServer 网络服务框架
来源:https://my.oschina.net/u/1433482/blog/190612 摘要: SocketServer简化了网络服务器的编写。它有4个类:TCPServer,UDPServer,UnixStreamServer,UnixDatagramServer。
853 0
10059
文章
0
问答
来源圈子
更多
+ 订阅
文章排行榜
最热
最新
相关电子书
更多
文娱运维技术
立即下载
《SaaS模式云原生数据仓库应用场景实践》
立即下载
《看见新力量:二》电子书
立即下载