精华内容
下载资源
问答
  • web搜索引擎的工作过程
    千次阅读
    2015-11-03 15:51:01

    1、Web搜索引擎的基本要求

    搜索引擎是一个网络应用软件系统,如下图所示,对它有如下基本要求。
    能够接受用户通过浏览器提交的查询词或者短语,记作q,例如“大数据”,“Spark”等等。
    在一个可以接受的时间内返回一个和该用户查询匹配的网页信息列表,记作L。这个列表的每一条目至少包含三个元素(标题,网址链接,摘要)。
    示意图:
    搜索引擎示意图

    可以接受的时间”,也就是响应时间,这个时间不能太长,通常也就在“秒”这个量级。这是衡量搜索引擎可用性的一个基本指标。
    更进一步的,这样的响应时间要求不仅要能满足单个用户查询,而且要能在系统设计负载的情况下满足所有的用户。也就是说,系统应该在额定吞吐率的情况下保证秒级响应时间。

    匹配”,指的是网页中以某种形式包含有q的内容,最简单最常见的形式就是q在其中直接出现。(当然,如果一个搜索引擎就是以百分之百满足这种简单的包含关系为目标,即使实现了也并不意味着达到了最好的效果。)

    列表”,就是一种序列(rank)。大多数情况下,L特别长,例如上万条数目等。这不仅是由于Web上的信息量大,也由于搜索引擎的查询方式简单。简单,意味着抽象;抽象,意味着有更多的具体事物可能是它的体现。
    有分析统计表明,用户平均察看返回结果不超过2页。
    现代大规模高质量搜索引擎一般采用下图三段式的工作流程,即:网页搜集、预处理和查询服务:

    三段式


    2、网页搜集

    大规模搜索引擎服务的基础应该是一批预先搜集好的网页,如何维护?

    1)定期搜集,每次搜集替换上一次的内容,我们称之为“批量搜集”。由于每次都是重新来一次,对于大规模搜索引擎来说,每次搜集的时间通常会花几周。而由于这样做开销较大,通常两次搜集的间隔时间也不会很短。这样做的好处是系统实现比较简单,主要缺点是“时新性”(freshness)不高,还有重复搜集所带来的额外带宽的消耗。

    2)增量搜集,开始时搜集一批,往后只是:
    (1)搜集新出现的网页
    (2)搜集那些在上次搜集后有过改变的网页
    (3)发现自从上次搜集后已经不再存在了的网页,并从库中删除。
    这样的系统表现出来的信息时新性就会比较高,主要缺点是系统实现比较复杂;这种复杂还不仅在于搜集过程,而是还在于建索引的过程。


    搜集方式:

    最常见的一种是所谓“爬取”:将Web上的网页集合看成是一个有向图,搜集过程从给定起始URL集合S开始,沿着网页中的链接,按照先深、先宽、或者某种别的策略遍历,不停的从S中移除URL,下载相应的网页,解析出网页中的超链接URL,看是否已经被访问过,将未访问过的那些URL加入集合S。整个过程可以形象地想象为一个蜘蛛(spider)在蜘蛛网(Web)上爬行(crawl)。一般真正的系统其实是多个“蜘蛛”同时在爬。

    另外一种可能的方式是在第一次全面网页搜集后,系统维护相应的URL集合S,往后的搜集直接基于这个集合。每搜到一个网页,如果它发生变化并含有新的URL,则将它们对应的网页也抓回来,并将这些新URL也放到集合S中;如果S中某个URL对应的网页不存在了,则将它从S中删除。这种方式也可以看成是一种极端的先宽搜索,即第一层是一个很大的集合,往下最多只延伸一层。

    还有一种方法是让网站拥有者主动向搜索引擎提交它们的网址,系统在一定时间内定向向那些网站派出“蜘蛛”程序,扫描该网站的所有网页并将有关信息存入数据库中。大型商业搜索引擎一般都提供这种功能。


    3、预处理

    一个合适的数据结构是查询子系统工作的核心和关键。这里只是指出:现行最有效的数据结构是“倒排文件”(inverted file);倒排文件是用文档中所含关键词作为索引,文档作为索引目标的一种结构
    下面讨论从网页集合形成这样的倒排文件过程中的几个主要问题,即我们所说的 “预处理”。主要包括四个方面,关键词的提取,“镜像网页”(网页的内容完全相同,未加任何修改)或“转载网页”(near-replicas,主题内容基本相同但可能有一些额外的编辑信息等,转载网页也称为“近似镜像网页”)的消除,链接分析和网页重要程度的计算。


    1、关键词的提取

    随便取一篇网页的源文件,我们可以看到其中的情况纷乱繁杂。除了我们从浏览器中能够正常看到的文字内容外,还有大量的HTML标记。根据天网统计,网页文档源文件的大小(字节量)通常大约是其中内容大小的4倍。另外,由于HTML文档产生来源的多样性,许多网页在内容上比较随意,不仅文字不讲究规范、完整,而且还可能包含许多和主要内容无关的信息。

    于是,作为预处理阶段的一个基本任务,就是要提取出网页源文件的内容部分所含的关键词

    对于中文来说,就是要根据一个词典Σ,用一个所谓“切词软件”,从网页文字中切出Σ所含的词语来。之后,一篇网页主要就由一组词来近似代表了,p = {t1, t2, …, tn}。
    一般来讲,我们可能得到很多词,同一个词可能在一篇网页中多次出现。从效果(effectiveness)和效率(efficiency)考虑,不应该让所有的词都出现在网页的表示中,要去掉诸如“的”,“在”等没有内容指示意义的词,称为“停用词”(stop word)。


    2、重复或转载网页的消除

    我们看到Web上的信息存在大量的重复现象。
    例如,一条新闻总是会有十多个不同的URL也给出相同或者基本相似的内容。这种现象对于广大的网民来说是有正面意义的,因为有了更多的信息访问机会。但对于搜索引擎来说,则主要是负面的;它不仅在搜集网页时要消耗机器时间和网络带宽资源,而且如果在查询结果中出现,无意义地消耗了计算机显示屏资源,也会引来用户的抱怨,“这么多重复的,给我一个就够了”。

    因此,消除内容重复或主题内容重复的网页是预处理阶段的一个重要任务。


    3、链接分析
    前面提到,大量的HTML标记既给网页的预处理造成了一些麻烦,也带来了一些新的机遇。

    HTML文档中所含的指向其他文档的链接信息是人们近几年来特别关注的对象,认为它们不仅给出了网页之间的关系,而且还对判断网页的内容有很重要的作用。


    4、 网页重要程度的计算
    搜索引擎返回给用户的,是一个和用户查询相关的结果列表。列表中条目的顺序是很重要的一个问题。

    如何讲一篇网页比另外一篇网页重要?

    人们参照科技文献重要性的评估方式,核心想法就是“被引用多的就是重要的”。“引用”这个概念恰好可以通过HTML超链在网页之间体现得非常好。
    除此以外,人们还注意到网页和文献的不同特点,即一些网页主要是大量对外的链接,其本身基本没有一个明确的主题内容,而另外有些网页则被大量的其他网页链接。从某种意义上讲,这形成了一种对偶的关系,这种关系使得人们可以在网页上建立另外一种重要性指标。这些指标有的可以在预处理阶段计算,有的则要在查询阶段计算,但都是作为在查询服务阶段最终形成结果排序的部分参数。


    4、查询服务

    从一个原始网页集合S开始,预处理过程得到的是对S的一个子集的元素的某种内部表示,这种表示构成了查询服务的直接基础。

    对每个元素来说,这种表示至少包含如下几个方面:

     原始网页文档
     URL和标题
     编号
     所含的重要关键词的集合(以及它们在文档中出现的位置信息)
     其他一些指标(例如重要程度,分类代码等)

    而系统关键词总体的集合和文档的编号一起构成了一个倒排文件结构,使得一旦得到一个关键词输入,系统能迅速给出相关文档编号的集合输出。
    然而,用户通过搜索引擎看到的不是一个“集合”,而是一个“列表”。

    如何从集合生成一个列表,是服务子系统的主要工作。

    对服务子系统的要求和其工作原理,主要有三个方面:

    1、查询方式和匹配

    查询方式指的是系统允许用户提交查询的形式。考虑到各种用户的不同背景和不同的信息需求,不可能有一种普适的方式。一般认为,对于普通网络用户来说,最自然的方式就是“要什么就输入什么”。

    用一个词或者短语来直接表达信息需求,希望网页中含有该词或者该短语中的词,依然是主流的搜索引擎查询模式。
    这不仅是因为它的确代表了大多数的情况,还因为它比较容易实现。这样,一般来讲,系统面对的是查询短语。就英文来说,它是一个词的序列;就中文来说,它是包含若干个词的一段文字。
    一般地,我们用q0表示用户提交的原始查询,例如,q0 =“网络与分布式系统实验室”。它首先需要被“切词”(segment)或称“分词”,即把它分成一个词的序列。如上例,某分词算法将其分为“网络 与 分布式 系统 实验室”。然后需要删除那些没有查询意义或者几乎在每篇文档中都会出现的词(例如“的”),在本例中即为“与”。最后形成一个用于参加匹配的查询词表,q = {t1, t2, …, tm},在本例中生成的词表就是q = {网络,分布式,系统,实验室}。

    倒排文件就是用词来作为索引的一个数据结构,显然,上例q中的词必须是包含在倒排文件词表中才有意义。有了这样的q,它的每一个元素都对应倒排文件中的一个倒排表(文档编号的集合),记作L(ti),它们的交集即为对应查询的结果文档集合,从而实现了查询和文档的匹配。

    上述过程的基本假设是一般情况:用户是希望网页包含所输入查询文字的。


    2、 结果排序
    用户查询的这个集合的元素需要以一定的形式通过计算机显示屏呈现给用户。就目前的技术情况看,列表是最常见的形式。

    给定一个查询结果集合,R={r1, r2, …, rn},所谓列表,就是按照某种评价方式,确定出R中元素的一个顺序,让这些元素以这种顺序呈现出来。笼统地讲,ri和q的相关性(relevance)是形成这种顺序的基本因素。

    为了形成一个合适的顺序,在搜索引擎出现的早期人们采用了传统信息检索领域很成熟的基于词汇出现频度的方法。大致上讲就是一篇文档中包含的查询(q)中的那些词越多,则该文档就应该排在越前面;再精细一些的考虑则是若一个词在越多的文档中有出现,则该词用于区分文档相关性的作用就越小。这样一种思路不仅有一定直觉上的道理,而且在倒排文件数据结构上很容易实现。因为,当我们通过前述关键词的提取过程,形成一篇文档的关键词集合,p = {t1, t2, …, tn}的时候,很容易同时得到每一个ti在该文档中出现的次数,即词频,而倒排文件中每个倒排表的长度则对应着一个词所涉及的文档的篇数,即文档频率。
    然而,由于网页编写的自发性、随意性较强,仅仅针对词的出现来决定文档的顺序,在Web上做信息检索表现出明显的缺点,需要有其他技术的补充。

    这方面最重要的成果就是PageRank。通过在预处理阶段为每篇网页形成一个独立于查询词(也就和网页内容无关)的重要性指标,将它和查询过程中形成的相关性指标结合形成一个最终的排序,是目前搜索引擎给出查询结果排序的主要方法。


    3、 文档摘要
    搜索引擎给出的结果是一个有序的条目列表,每一个条目有三个基本的元素:标题,网址和摘要。

    其中的摘要需要从网页正文中生成。
    但相关的技术用到网络搜索引擎来有两个基本困难。一是网页的写作通常不规范,文字比较随意,因此从语言理解的角度难以做好;二是复杂的语言理解算法耗时太多,不适应搜索引擎要高效处理海量网页信息的需求。

    根据查询词在文档中的位置,提取出周围的文字来,在显示时将查询词标亮。这是目前大多数搜索引擎采用的方式。为了保证查询的效率,需要在预处理阶段分词的时候记住每个关键词在文档中出现的位置。


    5、体系结构

    上述工作原理的基础上,作为一个网络应用软件,我们可以勾画出搜索引擎的体系结构:
    体系结构

    上图中“控制器”的作用
    网页的搜集,如果是为了向大规模搜索引擎稳定地提供网页数据,通常需要每天搜集上百万网页,而且是持续进行,情况则要复杂许多,核心是要综合解决效率、质量和“礼貌”的问题。这就是“控制器”的作用。

    所谓效率,在这里就是如何利用尽量少的资源(计算机设备、网络带宽、时间)来完成预定的网页搜集量。
    所谓质量问题,指的是在有限的时间,搜集有限的网页,希望它们尽量是比较“重要”的网页,或者说不要漏掉那些很重要的网页。
    礼貌,即是说搜索引擎需要和网站“和睦相处”,不要频繁抓取过多,会被认为是黑客攻击。


    知识来源:搜索引擎教材 李晓明等著

    更多相关内容
  • 3.2搜索引擎的详细工作流程 11 4 系统分析与设计 14 4.1系统分析 14 4.2系统概要设计 14 4.2系统实现目标 15 5 系统详细实现 16 5.1实现环境配置 16 5.2功能实现 16 5.2.1 建立索引 16 5.2.2 文件搜索实现 18 5.2.3 ...
  • 百度搜索引擎工作原理解读

    千次阅读 2020-12-23 00:00:00
    作为seo工作人员,搜索引擎运行原理是必须要了解的,包括页面质量白皮书、搜索引擎优化指南,今天重点解读下搜索引擎整个工作原理过程分析。搜索引擎的主要工作过程包括:抓取、存储、页面分析、索...

    作为seo工作人员,搜索引擎运行原理是必须要了解的,包括页面质量白皮书、搜索引擎优化指南,今天重点解读下搜索引擎整个工作原理过程分析。

    搜索引擎的主要工作过程包括:抓取、存储、页面分析、索引、检索等几个主要过程。也就是常说的抓取、过滤、收录、排序四个过程,下面详解的讲解每个过程,及有哪些影响

    一、搜索引擎抓取

    Spider抓取系统是搜索引擎数据来源的重要保证,如果把web理解为一个有向图,那么spider的工作过程可以认为是对这个有向图的遍历。从一些重要的种子 URL开始,通过页面上的超链接关系,不断的发现新URL并抓取,尽最大可能抓取到更多的有价值网页。

    搜索引擎工作原理解读

    影响抓取的因素

    1、抓取友好性

    互联网资源庞大的数量级,这就要求抓取系统尽可能的高效利用带宽,在有限的硬件和带宽资源下尽可能多的抓取到有价值资源。

    2、用抓取返回码示意

    简单介绍几种百度支持的返回码:

    1)最常见的404代表“NOT FOUND”,认为网页已经失效,通常将在库中删除,同时短期内如果spider再次发现这条url也不会抓取;

    2)503代表“Service Unavailable”,认为网页临时不可访问,通常网站临时关闭,带宽有限等会产生这种情况。

    3)403代表“Forbidden”,认为网页目前禁止访问。如果是新url,spider暂时不抓取,短期内同样会反复访问几次;如果是已收录url,不会直接删除,短期内同样反复访问几次。如果网页正常访问,则正常抓取;如果仍然禁止访问,那么这条url也会被认为是失效链接,从库中删除。

    4)301代表是“Moved Permanently”,认为网页重定向至新url。当遇到站点迁移、域名更换、站点改版的情况时,我们推荐使用301返回码,同时使用站长平台网站改版工具,以减少改版对网站流量造成的损失。

    3、取优先级调配

    由于互联网资源规模的巨大以及迅速的变化,对于搜索引擎来说全部抓取到并合理的更新保持一致性几乎是不可能的事情,因此这就要求抓取系统设计一套合理的抓取优先级调配策略。主要包括:深度优先遍历策略、宽度优先遍历策略、pr优先策略、反链策略、社会化分享指导策略等等

    4、取反作弊

    spider在抓取过程中往往会遇到所谓抓取黑洞或者面临大量低质量页面的困扰,这就要求抓取系统中同样需要设计一套完善的抓取反作弊系统

    百度搜索引擎工作原理

    对于网站抓取频次的断断原则

    1,网站更新频率:更新快多来,更新慢少来,直接影响Baiduspider的来访频率

    2,网站更新质量:更新频率提高了,仅仅是吸引了Baiduspier的注意,Baiduspider对质量是有严格要求的,如果网站每天更新出的大量内容都被Baiduspider判定为低质页面,依然没有意义。

    3,连通度:网站应该安全稳定、对Baiduspider保持畅通,经常给Baiduspider吃闭门羹可不是好事情

    4,站点评价:百度搜索引擎对每个站点都会有一个评价,且这个评价会根据站点情况不断变化,是百度搜索引擎对站点的一个基础打分

    二、搜索引擎过滤垃圾内容

    1, 重复内容的网页:互联网上已有的内容,百度必然没有必要再收录。

    2, 主体内容空短的网页

    1)有些内容使用了百度spider无法解析的技术,如JS、AJAX等,虽然用户访问能看到丰富的内容,依然会被搜索引擎抛弃

    2)加载速度过慢的网页,也有可能被当作空短页面处理,注意广告加载时间算在网页整体加载时间内。

    3)很多主体不突出的网页即使被抓取回来也会在这个环节被抛弃。

    3, 部分作弊网页

    4各种过滤,举例可能包含过滤掉死链、重复数据、色情、垃圾结果以及你懂的;

    搜索引擎蜘蛛工作原理

    三、如何更好的被收录,建立索引

    哪些网页可以进入优质索引库呢。其实总的原则就是一个:对用户的价值。包括却不仅于:

    1,有时效性且有价值的页面:在这里,时效性和价值是并列关系,缺一不可。有些站点为了产生时效性内容页面做了大量采集工作,产生了一堆无价值面页,也是百度不愿看到的.

    2,内容优质的专题页面:专题页面的内容不一定完全是原创的,即可以很好地把各方内容整合在一起,或者增加一些新鲜的内容,比如观点和评论,给用户更丰富全面的内容。

    3,高价值原创内容页面:百度把原创定义为花费一定成本、大量经验积累提取后形成的文章。千万不要再问我们伪原创是不是原创。

    4,重要个人页面:这里仅举一个例子,科比在新浪微博开户了,即使他不经常更新,但对于百度来说,它仍然是一个极重要的页面。

    百度搜索引擎蜘蛛

    四、百度搜索引擎排序影响因素

    1,相关性:网页内容与用户检索需求的匹配程度,比如网页包含的用户检查关键词的个数,以及这些关键词出现的位置;外部网页指向该页面所用的锚文本等

    2,权威性:用户喜欢有一定权威性网站提供的内容,相应的,百度搜索引擎也更相信优质权威站点提供的内容。

    3,时效性:时效性结果指的是新出现的网页,且网页内承载了新鲜的内容。目前时效性结果在搜索引擎中日趋重要。

    4,重要性:网页内容与用户检查需求匹配的重要程度或受欢迎程度

    5,丰富度:丰富度看似简单却是一个覆盖范围非常广的命题。可以理解为网页内容丰富,可以完全满足用户需求;不仅可以满足用户单一需求,还可以满足用户的延展需求。

    6,受欢迎程度:指该网页是不是受欢迎。

    7、终排序,将最能满足用户需求的结果排序在最前,可能包括的有用信息如:网站的整体评价、网页质量、内容质量、资源质量、匹配程度、分散度、时效性等

    总结:

    这整个过程就是搜索引擎抓取到排名结果页的计算过程,当然其中影响排名的因素还有很多,这个是网页分析技术,但网站的总体得分是由每个网页组成,所以说要做好每个网页的细节优化,做好用户用户体验,提升网站排名。

    互联互通社区


    互联互通社区专注于IT互联网交流与学习,关注公众号:互联互通社区,每日获取最新报告并附带专题内容辅助学习。方案打造与宣讲、架构设计与执行、技术攻坚与培训、数据中台等技术咨询与服务合作请+微信:hulianhutongshequ

    展开全文
  • 个性化搜索是指同样的关键字对不同的人返回其感兴趣的搜索结果。...通过若干挖掘算法,将Web原始日志信息进行用户识别,会话分组后,提取单一用户多次会话中的搜索关键字关联规则,为实现个性化搜索引擎提供参考。
  • 搜索引擎工作原理解析

    万次阅读 2018-08-22 21:29:25
    本篇文章从整个搜索引擎架构技术大框架方面来学习,搜索引擎工作原理。 1 搜索引擎基本模块 2 爬虫 网络爬虫(Web crawler),是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本,它们被广泛...

    本篇文章从整个搜索引擎架构技术大框架方面来学习,搜索引擎工作原理。

    1 搜索引擎基本模块

    搜索引擎的简单结构
    搜索引擎的主要模块

    2 爬虫

    网络爬虫(Web crawler),是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本,它们被广泛用于互联网搜索引擎或其他类似网站,可以自动采集所有其能够访问到的页面内容,以获取或更新这些网站的内容和检索方式。从功能上来讲,爬虫一般分为数据采集,处理,储存三个部分。传统爬虫从一个或若干初始网页的URL开始,获得初始网页上的URL,在抓取网页的过程中,不断从当前页面上抽取新的URL放入队列,直到满足系统的一定停止条件。聚焦爬虫的工作流程较为复杂,需要根据一定的网页分析算法过滤与主题无关的链接,保留有用的链接并将其放入等待抓取的URL队列。然后,它将根据一定的搜索策略从队列中选择下一步要抓取的网页URL,并重复上述过程,直到达到系统的某一条件时停止。另外,所有被爬虫抓取的网页将会被系统存贮,进行一定的分析、过滤,并建立索引,以便之后的查询和检索;对于聚焦爬虫来说,这一过程所得到的分析结果还可能对以后的抓取过程给出反馈和指导。

    相对于通用网络爬虫,聚焦爬虫还需要解决三个主要问题:
    (1) 对抓取目标的描述或定义;
    (2) 对网页或数据的分析与过滤;
    (3) 对URL的搜索策略。

    3 Lucene

    Lucene是一款高性能的、可扩展的信息检索(IR)工具库。信息检索是指文档搜索、文档内信息搜索或者文档相关的元数据搜索等操作。

    Lucene结构

    4 搜索用户界面

    随着搜索技术的逐渐走向成熟,搜索界面也有了一个比较固定的模式。除了基本的搜索,我们可能都会涉及到下面这些方面。
    - 输入提示词:当用户在搜索框中输入查询过程中随时给予查询提示词。对于中文来说,当用户输入拼音的时候,也能提示。
    - 相关搜索提示词:当用户对当前的搜索结果不满意时,也许换一个搜索词,就能够得到更有用的信息。一般会根据用户当前搜索词给出多个相关的提示词。可以看成是协同过滤在搜索词上的一个具体应用。
    - 相关文档:返回和搜索结果中的某一个文档类似的文档。例如:Google搜索重的“类似结果”
    - 在结果中查询:如果返回结果很多,用户肯定希望在当前的结果中进行一定的过滤搜索。
    - 分类统计/搜索:返回搜索结果在类别中的分布图。用户可以按照类别缩小搜索范围,或者在搜索结果中导航。有点类似数据仓库中的向下钻取和向上钻取。
    - 搜索热词统计界面:往往按照用户类别统计搜索词,例如按照用户所属区域或者按照用户所属部门等,当然也可以直接按照用户统计搜索热词。例如Google的Trends。

    搜索界面的改进都是以用户体验为导向,具体的还需要根据应用场景优化。

    5 计算框架MapReduce

    首先让我们来重温一下 hadoop 的四大组件:
    HDFS:分布式存储系统
    MapReduce:分布式计算系统
    YARN: hadoop 的资源调度系统
    Common: 以上三大组件的底层支撑组件,主要提供基础工具包和 RPC 框架等

    Mapreduce 是一个分布式运算程序的编程框架,是用户开发“基于 hadoop 的数据分析 应用”的核心框架
    Mapreduce 核心功能是将用户编写的业务逻辑代码和自带默认组件整合成一个完整的 分布式运算程序,并发运行在一个 hadoop 集群上

    下面从一个统计文本单词数量的结构来了解MapReduce

    这些数据经过以下几个阶段

    输入拆分:

    输入到MapReduce工作被划分成固定大小的块叫做 input splits ,输入折分是由单个映射消费输入块。

    映射 - Mapping

    这是在 map-reduce 程序执行的第一个阶段。在这个阶段中的每个分割的数据被传递给映射函数来产生输出值。在我们的例子中,映射阶段的任务是计算输入分割出现每个单词的数量(更多详细信息有关输入分割在下面给出)并编制以某一形式列表<单词,出现频率>

    重排 Shuffling

    这个阶段消耗映射阶段的输出。它的任务是合并映射阶段输出的相关记录。在我们的例子,同样的词汇以及它们各自出现频率。

    Reducing

    在这一阶段,从重排阶段输出值汇总。这个阶段结合来自重排阶段值,并返回一个输出值。总之,这一阶段汇总了完整的数据集。

    在我们的例子中,这个阶段汇总来自重排阶段的值,计算每个单词出现次数的总和。

    6 文本挖掘

    常用的文本挖掘方法包括:全文检索,中文分词,句法分析,文本分类,文本聚类,关键词提取,文本摘要,信息提取,智能问答。
    文本挖掘架构

    展开全文
  • 百度搜索引擎工作原理

    万次阅读 多人点赞 2019-01-13 16:52:00
      关于百度以及其它搜索引擎工作原理,其实大家已经讨论过很多,但随着科技的进步、互联网业的发展,各家搜索引擎都发生着巨大的变化,并且这些变化都是飞快的。我们设计这个章节的目的,除了从官方的角度发出...

      关于百度以及其它搜索引擎的工作原理,其实大家已经讨论过很多,但随着科技的进步、互联网业的发展,各家搜索引擎都发生着巨大的变化,并且这些变化都是飞快的。我们设计这个章节的目的,除了从官方的角度发出一些声音、纠正一些之前的误读外,还希望通过不断更新内容,与百度搜索引擎发展保持同步,给各位站长带来最新的、与百度高相关的信息。本章主要内容分为四个章节,分别为:抓取建库;检索排序;外部投票;结果展现。
    在这里插入图片描述

    抓取建库

    Spider抓取系统的基本框架

      互联网信息爆发式增长,如何有效的获取并利用这些信息是搜索引擎工作中的首要环节。数据抓取系统作为整个搜索系统中的上游,主要负责互联网信息的搜集、保存、更新环节,它像蜘蛛一样在网络间爬来爬去,因此通常会被叫做“spider”。例如我们常用的几家通用搜索引擎蜘蛛被称为:Baiduspdier、Googlebot、Sogou Web Spider等。

      Spider抓取系统是搜索引擎数据来源的重要保证,如果把web理解为一个有向图,那么spider的工作过程可以认为是对这个有向图的遍历。从一些重要的种子 URL开始,通过页面上的超链接关系,不断的发现新URL并抓取,尽最大可能抓取到更多的有价值网页。对于类似百度这样的大型spider系统,因为每时 每刻都存在网页被修改、删除或出现新的超链接的可能,因此,还要对spider过去抓取过的页面保持更新,维护一个URL库和页面库。

      下图为spider抓取系统的基本框架图,其中包括链接存储系统、链接选取系统、dns解析服务系统、抓取调度系统、网页分析系统、链接提取系统、链接分析系统、网页存储系统。Baiduspider即是通过这种系统的通力合作完成对互联网页面的抓取工作
    在这里插入图片描述
    内容源自:https://baijiahao.baidu.com/s?id=1589707073913008560&wfr=spider&for=pc

    Baiduspider 主要抓取策略类型

    图看似简单,但其实Baiduspider在抓取过程中面对的是一个超级复杂的网络环境,为了使系统可以抓取到尽可能多的有价值资源并保持系统及实际环境中页面的一致性同时不给网站体验造成压力,会设计多种复杂的抓取策略。以下做简单介绍:

    1、抓取友好性

    互联网资源庞大的数量级,这就要求抓取系统尽可能的高效利用带宽,在有限的硬件和带宽资源下尽可能多的抓取到有价值资源。这就造成了另一个问题,耗费被抓网站的带宽造成访问压力,如果程度过大将直接影响被抓网站的正常用户访问行为。因此,在抓取过程中就要进行一定的抓取压力控制,达到既不影响网站的正常用户访问又能尽量多的抓取到有价值资源的目的。

    通常情况下,最基本的是基于ip的压力控制。这是因为如果基于域名,可能存在一个域名对多个ip(很多大网站)或多个域名对应同一个ip(小网站共享ip)的问题。实际中,往往根据ip及域名的多种条件进行压力调配控制。同时,站长平台也推出了压力反馈工具,站长可以人工调配对自己网站的抓取压力,这时百度spider将优先按照站长的要求进行抓取压力控制。

    对同一个站点的抓取速度控制一般分为两类:其一,一段时间内的抓取频率;其二,一段时间内的抓取流量。同一站点不同的时间抓取速度也会不同,例如夜深人静月黑风高时候抓取的可能就会快一些,也视具体站点类型而定,主要思想是错开正常用户访问高峰,不断的调整。对于不同站点,也需要不同的抓取速度。

    2、常用抓取返回码示意

    简单介绍几种百度支持的返回码:

    1)最常见的404代表“NOT FOUND”,认为网页已经失效,通常将在库中删除,同时短期内如果spider再次发现这条url也不会抓取;

    2)503代表“Service Unavailable”,认为网页临时不可访问,通常网站临时关闭,带宽有限等会产生这种情况。对于网页返回503状态码,百度spider不会把这条url直接删除,同时短期内将会反复访问几次,如果网页已恢复,则正常抓取;如果继续返回503,那么这条url仍会被认为是失效链接,从库中删除。

    3)403代表“Forbidden”,认为网页目前禁止访问。如果是新url,spider暂时不抓取,短期内同样会反复访问几次;如果是已收录url,不会直接删除,短期内同样反复访问几次。如果网页正常访问,则正常抓取;如果仍然禁止访问,那么这条url也会被认为是失效链接,从库中删除。

    4)301代表是“Moved Permanently”,认为网页重定向至新url。当遇到站点迁移、域名更换、站点改版的情况时,我们推荐使用301返回码,同时使用站长平台网站改版工具,以减少改版对网站流量造成的损失。

    3、多种url重定向的识别

    互联网中一部分网页因为各种各样的原因存在url重定向状态,为了对这部分资源正常抓取,就要求spider对url重定向进行识别判断,同时防止作弊行为。重定向可分为三类:http 30x重定向、meta refresh重定向和js重定向。另外,百度也支持Canonical标签,在效果上可以认为也是一种间接的重定向。

    4、抓取优先级调配

    由于互联网资源规模的巨大以及迅速的变化,对于搜索引擎来说全部抓取到并合理的更新保持一致性几乎是不可能的事情,因此这就要求抓取系统设计一套合理的抓取优先级调配策略。主要包括:深度优先遍历策略、宽度优先遍历策略、pr优先策略、反链策略、社会化分享指导策略等等。每个策略各有优劣,在实际情况中往往是多种策略结合使用以达到最优的抓取效果。

    5、重复url的过滤

    spider在抓取过程中需要判断一个页面是否已经抓取过了,如果还没有抓取再进行抓取网页的行为并放在已抓取网址集合中。判断是否已经抓取其中涉及到最核心的是快速查找并对比,同时涉及到url归一化识别,例如一个url中包含大量无效参数而实际是同一个页面,这将视为同一个url来对待。

    6、暗网数据的获取

    互联网中存在着大量的搜索引擎暂时无法抓取到的数据,被称为暗网数据。一方面,很多网站的大量数据是存在于网络数据库中,spider难以采用抓取网页的方式获得完整内容;另一方面,由于网络环境、网站本身不符合规范、孤岛等等问题,也会造成搜索引擎无法抓取。目前来说,对于暗网数据的获取主要思路仍然是通过开放平台采用数据提交的方式来解决,例如“百度站长平台”“百度开放平台”等等。

    7、抓取反作弊

    spider在抓取过程中往往会遇到所谓抓取黑洞或者面临大量低质量页面的困扰,这就要求抓取系统中同样需要设计一套完善的抓取反作弊系统。例如分析url特征、分析页面大小及内容、分析站点规模对应抓取规模等等。

    Baiduspider抓取过程中涉及的网络协议

    刚才提到百度搜索引擎会设计复杂的抓取策略,其实搜索引擎与资源提供者之间存在相互依赖的关系,其中搜索引擎需要站长为其提供资源,否则搜索引擎就无法满足用户检索需求;而站长需要通过搜索引擎将自己的 内容推广出去获取更多的受众。spider抓取系统直接涉及互联网资源提供者的利益,为了使搜素引擎与站长能够达到双赢,在抓取过程中双方必须遵守一定的 规范,以便于双方的数据处理及对接。这种过程中遵守的规范也就是日常中我们所说的一些网络协议。

    以下简单列举:

    http协议:超文本传输协议,是互联网上应用最为广泛的一种网络协议,客户端和服务器端请求和应答的标准。客户端一般情况是指终端用户,服务器端即指网 站。终端用户通过浏览器、蜘蛛等向服务器指定端口发送http请求。发送http请求会返回对应的httpheader信息,可以看到包括是否成功、服务 器类型、网页最近更新时间等内容。

    https协议:实际是加密版http,一种更加安全的数据传输协议。

    UA属性:UA即user-agent,是http协议中的一个属性,代表了终端的身份,向服务器端表明我是谁来干嘛,进而服务器端可以根据不同的身份来做出不同的反馈结果。

    robots协议:robots.txt是搜索引擎访问一个网站时要访问的第一个文件,用以来确定哪些是被允许抓取的哪些是被禁止抓取的。 robots.txt必须放在网站根目录下,且文件名要小写。详细的robots.txt写法可参考 http://www.robotstxt.org 。百度严格按照robots协议执行,另外,同样支持网页内容中添加的名为robots的meta标 签,index、follow、nofollow等指令。

    Baiduspider抓取频次原则及调整方法

    Baiduspider根据上述网站设置的协议对站点页面进行抓取,但是不可能做到对所有站点一视同仁,会综合考虑站点实际情况确定一个抓取配额,每天定量抓取站点内容,即我们常说的抓取频次。那么百度搜索引擎是根据什么指标来确定对一个网站的抓取频次的呢,主要指标有四个:

    1,网站更新频率:更新快多来,更新慢少来,直接影响Baiduspider的来访频率

    2,网站更新质量:更新频率提高了,仅仅是吸引了Baiduspier的注意,Baiduspider对质量是有严格要求的,如果网站每天更新出的大量内容都被Baiduspider判定为低质页面,依然没有意义。

    3,连通度:网站应该安全稳定、对Baiduspider保持畅通,经常给Baiduspider吃闭门羹可不是好事情

    4,站点评价:百度搜索引擎对每个站点都会有一个评价,且这个评价会根据站点情况不断变化,是百度搜索引擎对站点的一个基础打分(绝非外界所说的百度权重),是百度内部一个非常机密的数据。站点评级从不独立使用,会配合其它因子和阈值一起共同影响对网站的抓取和排序。

    抓取频次间接决定着网站有多少页面有可能被建库收录,如此重要的数值如果不符合站长预期该如何调整呢?百度站长平台提供了抓取频次工具(http://zhanzhang.baidu.com/pressure/index),并已完成多次升级。该工具除了提供抓取统计数据外,还提供“频次调整”功能,站长根据实际情况向百度站长平台提出希望Baiduspider增加来访或减少来访的请求,工具会根据站长的意愿和实际情况进行调整。

    造成Baiduspider抓取异常的原因

    有一些网页,内容优质,用户也可以正常访问,但是Baiduspider却无法正常访问并抓取,造成搜索结果覆盖率缺失,对百度搜索引擎对站点都是一种损失,百度把这种情况叫“抓取异常”。对于大量内容无法正常抓取的网站,百度搜索引擎会认为网站存在用户体验上的缺陷,并降低对网站的评价,在抓取、索引、排序上都会受到一定程度的负面影响,最终影响到网站从百度获取的流量。

    下面向站长介绍一些常见的抓取异常原因:

    1,服务器连接异常

    服务器连接异常会有两种情况:一种是站点不稳定,Baiduspider尝试连接您网站的服务器时出现暂时无法连接的情况;一种是Baiduspider一直无法连接上您网站的服务器。

    造成服务器连接异常的原因通常是您的网站服务器过大,超负荷运转。也有可能是您的网站运行不正常,请检查网站的web服务器(如apache、iis)是否安装且正常运行,并使用浏览器检查主要页面能否正常访问。您的网站和主机还可能阻止了Baiduspider的访问,您需要检查网站和主机的防火墙。

    2,网络运营商异常:网络运营商分电信和联通两种,Baiduspider通过电信或网通无法访问您的网站。如果出现这种情况,您需要与网络服务运营商进行联系,或者购买拥有双线服务的空间或者购买cdn服务。

    3,DNS异常:当Baiduspider无法解析您网站的IP时,会出现DNS异常。可能是您的网站IP地址错误,或者域名服务商把Baiduspider封禁。请使用WHOIS或者host查询自己网站IP地址是否正确且可解析,如果不正确或无法解析,请与域名注册商联系,更新您的IP地址。

    4,IP封禁:IP封禁为:限制网络的出口IP地址,禁止该IP段的使用者进行内容访问,在这里特指封禁了BaiduspiderIP。当您的网站不希望Baiduspider访问时,才需要该设置,如果您希望Baiduspider访问您的网站,请检查相关设置中是否误添加了BaiduspiderIP。也有可能是您网站所在的空间服务商把百度IP进行了封禁,这时您需要联系服务商更改设置。

    5,UA封禁:UA即为用户代理(User-Agent),服务器通过UA识别访问者的身份。当网站针对指定UA的访问,返回异常页面(如403,500)或跳转到其他页面的情况,即为UA封禁。当您的网站不希望Baiduspider访问时,才需要该设置,如果您希望Baiduspider访问您的网站,useragent相关的设置中是否有Baiduspider UA,并及时修改。

    6,死链:页面已经无效,无法对用户提供任何有价值信息的页面就是死链接,包括协议死链和内容死链两种形式:

    协议死链:页面的TCP协议状态/HTTP协议状态明确表示的死链,常见的如404、403、503状态等。

    内容死链:服务器返回状态是正常的,但内容已经变更为不存在、已删除或需要权限等与原内容无关的信息页面。

    对于死链,我们建议站点使用协议死链,并通过百度站长平台–死链工具向百度提交,以便百度更快地发现死链,减少死链对用户以及搜索引擎造成的负面影响。

    7,异常跳转:将网络请求重新指向其他位置即为跳转。异常跳转指的是以下几种情况:

    1)当前该页面为无效页面(内容已删除、死链等),直接跳转到前一目录或者首页,百度建议站长将该无效页面的入口超链接删除掉

    2)跳转到出错或者无效页面

    注意:对于长时间跳转到其他域名的情况,如网站更换域名,百度建议使用301跳转协议进行设置。

    8,其他异常

    1)针对百度refer的异常:网页针对来自百度的refer返回不同于正常内容的行为。

    2)针对百度ua的异常:网页对百度UA返回不同于页面原内容的行为。

    3)JS跳转异常:网页加载了百度无法识别的JS跳转代码,使得用户通过搜索结果进入页面后发生了跳转的情况。

    4)压力过大引起的偶然封禁:百度会根据站点的规模、访问量等信息,自动设定一个合理的抓取压力。但是在异常情况下,如压力控制失常时,服务器会根据自身负荷进行保护性的偶然封禁。这种情况下,请在返回码中返回503(其含义是“Service Unavailable”),这样Baiduspider会过段时间再来尝试抓取这个链接,如果网站已空闲,则会被成功抓取。

    新链接重要程度判断

    好啦,上面我们说了影响Baiduspider正常抓取的原因,下面就要说说Baiduspider的一些判断原则了。在建库环节前,Baiduspide会对页面进行初步内容分析和链接分析,通过内容分析决定该网页是否需要建索引库,通过链接分析发现更多网页,再对更多网页进行抓取——分析——是否建库&发现新链接的流程。理论上,Baiduspider会将新页面上所有能“看到”的链接都抓取回来,那么面对众多新链接,Baiduspider根据什么判断哪个更重要呢?两方面:

    第一,对用户的价值:

    1,内容独特,百度搜索引擎喜欢unique的内容

    2,主体突出,切不要出现网页主体内容不突出而被搜索引擎误判为空短页面不抓取

    3,内容丰富

    4,广告适当

    第二,链接重要程度:

    1,目录层级——浅层优先

    2,链接在站内的受欢迎程度

    百度优先建重要库的原则

    Baiduspider抓了多少页面并不是最重要的,重要的是有多少页面被建索引库,即我们常说的“建库”。众所周知,搜索引擎的索引库是分层级的,优质的网页会被分配到重要索引库,普通网页会待在普通库,再差一些的网页会被分配到低级库去当补充材料。目前60%的检索需求只调用重要索引库即可满足,这也就解释了为什么有些网站的收录量超高流量却一直不理想。

    那么,哪些网页可以进入优质索引库呢。其实总的原则就是一个:对用户的价值。包括却不仅于:

    1,有时效性且有价值的页面:在这里,时效性和价值是并列关系,缺一不可。有些站点为了产生时效性内容页面做了大量采集工作,产生了一堆无价值面页,也是百度不愿看到的.

    2,内容优质的专题页面:专题页面的内容不一定完全是原创的,即可以很好地把各方内容整合在一起,或者增加一些新鲜的内容,比如观点和评论,给用户更丰富全面的内容。

    3,高价值原创内容页面:百度把原创定义为花费一定成本、大量经验积累提取后形成的文章。千万不要再问我们伪原创是不是原创。

    4,重要个人页面:这里仅举一个例子,科比在新浪微博开户了,需要他不经常更新,但对于百度来说,它仍然是一个极重要的页面。

    哪些网页无法建入索引库

    上述优质网页进了索引库,那其实互联网上大部分网站根本没有被百度收录。并非是百度没有发现他们,而是在建库前的筛选环节被过滤掉了。那怎样的网页在最初环节就被过滤掉了呢:

    1, 重复内容的网页:互联网上已有的内容,百度必然没有必要再收录。

    2, 主体内容空短的网页

    1)有些内容使用了百度spider无法解析的技术,如JS、AJAX等,虽然用户访问能看到丰富的内容,依然会被搜索引擎抛弃

    2)加载速度过慢的网页,也有可能被当作空短页面处理,注意广告加载时间算在网页整体加载时间内。

    3)很多主体不突出的网页即使被抓取回来也会在这个环节被抛弃。

    3, 部分作弊网页

    第二节-检索排序

      众所周知,搜索引擎的主要工作过程包括:抓取、存储、页面分析、索引、检索等几个主要过程。上一章我们主要介绍了部分抓取存储环节中的内容,此章简要介绍一下索引系统。

      在以亿为单位的网页库中查找特定的某些关键词犹如大海里面捞针,也许一定的时间内可以完成查找,但是用户等不起,从用户体验角度我们必须在毫秒级别给予用户满意的结果,否则用户只能流失。怎样才能达到这种要求呢?

      如果能知道用户查找的关键词(query切词后)都出现在哪些页面中,那么用户检索的处理过程即可以想象为:包含了query中切词后不同部分的页面集合求交的过程,而检索即变成了页面名称之间的比较、求交。这样,在毫秒内以亿为单位的检索成为了可能。这就是通常所说的倒排索引及求交检索的过程。如下为建立倒排索引的基本过程:
      在这里插入图片描述
    1,页面分析的过程实际上是将原始页面的不同部分进行识别并标记,例如:title、keywords、content、link、anchor、评论、其他非重要区域等等;

    2,分词的过程实际上包括了切词分词、同义词转换、同义词替换等等,以对某页面title分词为例,得到的将是这样的数据:term文本、termid、词类、词性等等;

    3,之前的准备工作完成后,接下来即是建立倒排索引,形成{termàdoc},下图即是索引系统中的倒排索引过程。
    在这里插入图片描述
      倒排索引是搜索引擎实现毫秒级检索非常重要的一个环节,下面我们要重要介绍一下索引系统建立倒排索引的重要过程——入库写库。

    倒排索引的重要过程——入库写库

      索引系统在建立倒排索引的最后还需要有一个入库写库的过程,而为了提高效率这个过程还需要将全部term以及偏移量保存在文件头部,并且对数据进行压缩,这涉及到的过于技术化在此就不多提了。在此简要给大家介绍一下索引之后的检索系统。
    在这里插入图片描述

    检索系统执行流程

    检索系统主要包含了五个部分,如下图所示:
      (1)Query串切词分词即将用户的查询词进行分词,对之后的查询做准备,以“10号线地铁故障”为例,可能的分词如下(同义词问题暂时略过):

    10 0x123abc

    号 0x13445d

    线 0x234d

    地铁 0x145cf

    故障 0x354df

    (2)查出含每个term的文档集合,即找出待选集合,如下:

    0x123abc 1 2 3 4 7 9……

    0x13445d 2 5 8 9 10 11……

    ……

    ……

    (3)求交,上述求交,文档2和文档9可能是我们需要找的,整个求交过程实际上关系着整个系统的性能,这里面包含了使用缓存等等手段进行性能优化;

    (4)各种过滤,举例可能包含过滤掉死链、重复数据、色情、垃圾结果以及你懂的;

    (5)最终排序,将最能满足用户需求的结果排序在最前,可能包括的有用信息如:网站的整体评价、网页质量、内容质量、资源质量、匹配程度、分散度、时效性等等

    影响搜索结果排序的因素

      上面的内容好象有些深奥,因为涉及大量技术细节,我们只能说到这儿了。那下面我们说说大家最感兴趣的排序问题吧。用户输入关键词进行检索,百度搜索引擎在排序环节要做两方面的事情,第一是把相关的网页从索引库中提取出来,第二是把提取出来的网页按照不同维度的得分进行综合排序。“不同维度”包括:

    1,相关性:网页内容与用户检索需求的匹配程度,比如网页包含的用户检查关键词的个数,以及这些关键词出现的位置;外部网页指向该页面所用的锚文本

    2,权威性:用户喜欢有一定权威性网站提供的内容,相应的,百度搜索引擎也更相信优质权威站点提供的内容。

    3,时效性:时效性结果指的是新出现的网页,且网页内承载了新鲜的内容。目前时效性结果在搜索引擎中日趋重要。

    4,重要性:网页内容与用户检查需求匹配的重要程度或受欢迎程度

    5,丰富度:丰富度看似简单却是一个覆盖范围非常广的命题。可以理解为网页内容丰富,可以完全满足用户需求;不仅可以满足用户单一需求,还可以满足用户的延展需求。

    6,受欢迎程度:指该网页是不是受欢迎。

      以上便是百度搜索引擎决定搜索结果排序时考虑的六大原则,那么六大原则的侧重点是怎样的呢?哪个原则在实际应用时占比最大呢?其实在这里没有一个确切的答案。在百度搜索引擎早期,这些阈值的确是相对固定的,比如“相关性”在整体排序中的重量可以占到七成。但随着互联网的不断发展,检索技术的进步,网页数量的爆发式增长,相关性已经不是难题。于是百度搜索引擎引入了机器学习机制,让程序自动产出计算公式,推进排序策略更加合理。

    低质网页狙击策略——石榴算法

      我们理解网站生存发展需要资金支持,从来不反对网站添加各种合法广告,不要再问我们“我们网站加了XX联盟的广告会不会被处罚”这类问题。有些站点好不容易在百度有了比较好的排位,却在页面上放置大量有损访问用户体验的广告,已经严重影响到百度搜索引擎用户的使用感受。为此,百度质量团队2013年5月17日发布公告:针对低质量网页推出了石榴算法,旨在打击含有大量妨碍用户正常浏览的恶劣广告的页面,尤其是弹出大量低质广告、存在混淆页面主体内容的垃圾广告的页面。
      如以下网页截图,用户要花很长时间去寻找真正的下载地址,是百度无法接受容忍的。
    在这里插入图片描述

      百度质量团队希望站长能够多从用户角度出发,朝着长远发展考虑,在不影响用户体验的前提下合理地放置广告,赢得用户的长期青睐才是一个网站发展壮大的基础。

    外部投票

    外链的作用(2014版)

      曾经,“内容为王超链为皇”的说法流行了很多年,通过超链计算得分来体现网页的相关性和重要性,的确曾经是搜索引擎用来评估网页的重要参考因素之一,会直接参与搜索结果排序计算。但随着该技术被越来越多的SEO人员了解,超链已经逐渐失去作为投票的重要意义,无论是谷歌还是百度,对超链数据的依赖程度都越来越低。那么,在现在,超链在发挥着怎样的作用?
      1, 吸引蜘蛛抓取:虽然百度在挖掘新好站点方面下了很大工夫,开放了多个数据提交入口,开避了社会化发现渠道,但超链依然是发现收录链接的最重要入口。

    2, 向搜索引擎传递相关性信息:百度除了通过TITLE、页面关键词、H标签等对网页内容进行判断外,还会通过锚文本进行铺助判断。使用图片作为点击入口的超链,也可以通过alt属性和title标签向百度传情达意。

    3, 提升排名:百度搜索引擎虽然降低了对超链的依赖,但对超链的识别力度从未下降,制定出更加严格的优质链接、正常链接、垃圾链接和作弊链接标准。对于作弊链接,除了对链接进行过滤清理外,也对链接的受益站进行一定程度的惩罚。相应的,对优质链接,百度依然持欢迎的态度。

    4, 内容分享,获取口碑:优质内容被广泛传播,网站借此获得的流量可能并不多,但如果内容做得足够,也可以树立自己的品牌效应。
    严格来讲,这并不属于超链的作用。在百度眼里,网站的品牌比超链要重要得多。

    切断买卖超链的利刃——绿萝算法1.0&2.0

    百度质量团队2013年2月19日发布公告推出绿萝算法,针对买卖链接行为再次强调:买卖链接行为一方面影响用户体验,干扰搜索引擎算法;另一方面让投机建站者得利、超链中介者得利,真正勤勤恳恳做好站的站长在这种恶劣的互联网超链环境中无法获得应有的回报。因此针对买卖链接行为在清除外链计算的基础上,以下三个类型的网站将会受到不同程度的影响:

    1、超链中介:超链本应是互联网上相对优质的推荐,是普通用户及网站之间对页面内容、网站价值的肯定,但是现在种种超链作弊行为使得真实的肯定变成了一些人谋取利益的垫脚石,用户无法根据链接的推荐找到需要的优质资源,并且严重干扰搜索引擎对网站的评价。超链中介便是这畸形的超链市场下形成的恶之花,我们有义务维护超链的纯净维护用户利益,也有责任引导站长朋友们不再支出无谓的花销,所以超链中介将在我们的目标范围内。

    2、出卖链接的网站:一个站点有许多种盈利方式,利用优质的原创内容吸引固定用户,引进优质广告资源,甚至举办线下活动,这些盈利方式都是我们乐于见到的,是一个网站的真正价值所在。但是一些网站内容基本采集自网络,以出卖超链位置为生;一些机构类网站或被链接中介所租用进行链接位置出售,使得超链市场泡沫越吹越多。此次的调整对这类站点同样将有所影响。

    3、购买链接的网站:一直以来,百度对优质站点都会加以保护和扶植,这是从用户需求以及创业站长的角度出发的必然结果。而部分站长不将精力用在提升网站质量上,而选择钻营取巧,以金钱换取超链,欺骗搜索引擎进而欺骗用户。对于没有太多资源和金钱用于此类开销的创业站长来说,也是一种无形的伤害,如果不进行遏制,劣币驱逐良币,势必导致互联网环境愈加恶劣。此次调整这类站点本身也将受到影响。

    以上即百度质量团队首次推出绿萝算法时的具体情况,后来被称为绿萝算法1.0。事隔5个月之后,百度质量团队再次推出绿萝算法2.0,针对明显的推广性软文进行更大范围更加严格的处理。

    惩罚的对象重点是发布软文的新闻站点,同时包括软文交易平台、软文收益站点。惩罚方式包括:

    1、针对软文交易平台,将被直接屏蔽;

    2、针对软文发布站,将视不同程度而进行处理。例如一个新闻网站,存在发布软文的现象但情节不严重,该网站在搜索系统中将被降低评价;利用子域大量发布软文的,该子域将被直接屏蔽,并且清理出百度新闻源;更有甚者创建大量子域用于发布软文,此种情况整个主域将被屏蔽。

    3、针对软文受益站,一个网站的外链中存在少量的软文外链,那么此时该外链将被过滤清除出权重计算体系,该受益站点将被观察一段时间后视情况而进一步处理;一个网站的外链中存在大量的软文外链,那么此时该受益站点将被降低评价或直接屏蔽。

    第四节-结果展现

    结构化数据——助力站点获得更多点击

    网页经历了抓取建库,参与了排序计算,最终展现在搜索引擎用户面前。目前在百度搜索左侧结果展现形式很多,如:凤巢、品牌专区、自然结果等,一条自然结果怎样才能获得更多的点击,是站长要考虑的重要一环。

    目前自然结果里又分为两类,见下图,第一个,即结构化展现,形式比较多样。目前覆盖80%的搜索需求,即80%的关键词下会出现这种复杂展现样式;第二个即一段摘要式展现,最原始的展现方式,只有一个标题、两行摘要、部分链接。
    在这里插入图片描述

    很明显,结构化展现能够向用户明确传递信息,直击用户需求痛点,获得更好的点击自然不在话下。目前结构化展现有几个样式:

    1, 通用问答:提取答案,方便搜索用户参考,有些结构化数据还提取出了问题
    在这里插入图片描述
    2, 下载:
    在这里插入图片描述

    3,时间戳:对于时效性较强的资讯,将时间提取出来,吸引用户点击,还有回复的条目,能够表现这个链接的有效性和热度

    在这里插入图片描述
      4, 在线文档:出现文档格式示意图
    在这里插入图片描述

    5,原创标记: 原创标记的使用是最严格的,只有通过人工审核的站点才能拥有原创标志,在抓取和排序上有一定优待,所以审核非常严格,严控质量。

    6,配图:扩大面积,方便用户了解网页内容,吸引点击
    在这里插入图片描述

    那么站长可以通过什么途径获得结果化展现呢:

    1,参与原创星火计划:百度站长平台VIP俱乐部提供申请入口,需要经过人工审核后进行数据提交

    2,结构化数据提交工具:zhanzhang.baidu.com/wiki/197

    3,结构化数据标注工具:zhanzhang.baidu.com/itemannotator/index

    4,搜索结果配图:具体要求为,在文章主体位置;图片与内容相关;图片上没有文字;图片比例接近121*91
    内容源自:https://baijiahao.baidu.com/s?id=1589707073913008560&wfr=spider&for=pc

    展开全文
  • 在解析Web Service的体系结构的基础上,分析了其应用于搜索引擎的原因,以油田信息资源为平台,设计了一种基于Web Service技术的信息搜索引擎解决方案,并详细描述了该方案中各模块的具体内容,工作流程及安全策略等...
  • 由于Firefox的限制,网络扩展程序可能无法读取您的搜索引擎列表,也无法为您选择默认的搜索引擎。 该扩展程序充当搜索引擎,并将您的搜索重定向到您选择的真实搜索引擎。 安装后,您需要执行以下操作才能使此扩展...
  • 因为搜索引擎这一技术很好的解决了用户搜索网上大量信息的难题,所以在当今的社会,无论是发展迅猛的计算机行业,还是作为后起之秀的信息产业界,都把Web搜索引擎的技术作为了争相探讨与专研的方向。 搜索引擎的定义...
  • 开发自己的web搜索引擎——MyGoGo

    千次阅读 2010-03-02 23:29:00
    开发自己的web搜索引擎——MyGoGo马文虎(南京大学 工程管理学院信息管理工程)1 简介(Introduction)1.1 提出问题 (Background)互联网上的信息数以亿计,如何在这浩如烟海的世界中找到自己想要的信息已经成为...
  • Web 3D引擎闲谈

    千次阅读 2020-11-04 10:38:16
    3D开发过程中存在大量相关参数的调整,所以图形化编辑器就显得尤为重要 ThingJS ThingJS是新兴的3D框架,2018年诞生,由北京优锘科技公司研发,旨在简化3D应用开发。轻量化的表现在:1、ThingJS封装了对模型交互事件...
  • 后端技术杂谈2:搜索引擎工作原理

    千次阅读 2018-07-10 22:58:02
    Max Grigorev最近写了一篇文章,题目是《What every software engineer should know about search》,这篇文章里指出了现在一些软件工程师的问题,他们认为开发一个搜索引擎功能就是搭建一个ElasticSearch集群,而...
  • 什么是搜索引擎?有什么作用?

    千次阅读 2021-07-13 08:53:10
    什么是搜索引擎?有什么作用?01 什么是搜索引擎及搜索系统02 搜索引擎的发展史03 搜索引擎的分类1. 全文搜索引擎2. 元搜索引擎3. 垂直搜索引擎4. 目录搜索引擎 作者:大数据DT 来源:大数据DT 导读:我们现在正...
  • 你用过哪些搜索引擎呢? 百度 bing Google ? 一 :利用百度的高级搜索功能帮助你找到关键信息 二 :Google Hack google hack是指使用Google等搜索引擎对某些特定的网络主机漏洞(通常是服务器上的脚本漏洞)进行搜索...
  • 信息收集概述 Web信息收集(探测)即web踩点,...Web信息收集涉及搜索引擎、网站扫描、域名遍历、指纹识别等工作 Google Hacking 1. site 功能:搜索指定的域名网页内容,可以用来搜索子域名、跟此域名相关的内...
  • 文章目录前言1 什么是搜索引擎如何实现一个搜索引擎搜索引擎原理搜索器索引器检索器用户接口系统实现部分实现代码完整工程 前言 今天学长在这里向大家分享一个非常优质的毕设项目:基于Java的搜索引擎系统实现。 ...
  • Web搜索引擎技术

    千次阅读 2009-09-25 13:38:16
    一、Web搜索引擎技术综述二、Google技术三、百度技术四、结束语 搜索引擎(search engine)是指根据一定的策略、运用特定的计算机程序搜集互联网上的信息,在对信息进行组织和处理后,为用户提供检索服务的系统。...
  • 对w eb数据搜索引擎技术进行了概述,在此基础上进一步阐述数据采集过程、RobotI拘l搜索策略、HTML解析器基本算法及数据检索模型,最后指出目前搜索引擎存在的问题,提出未来搜索引擎的发展方向。
  • 搜索引擎基本工作原理

    千次阅读 2019-10-11 13:58:35
    搜索引擎的基本工作原理  搜索引擎基于获得最快的搜索结果,它搜索的内容一般是一个预先组织的Web索引数据库。 寻常搜索,无法真正理解网页上的内容,它只能机械地匹配网页上的文本。在搜索引擎的真正意义上,一般...
  • 网络空间搜索引擎全方位评测

    千次阅读 2021-03-07 21:52:28
    如果说GPS绘制出了世界的地图,那么网络空间搜索引擎就是整个互联网的地图。自从互联网诞生的那一刻,网络空间也由混沌之初快速扩张。在互联网中各种网络设备物物相连,因此互联网基础上的延伸和扩展,用户端延伸和...
  • 搜索引擎使用技巧之高级搜索

    千次阅读 2021-04-12 16:32:47
    搜索引擎的使用技巧 搜索引擎就是帮助我们来方便地查询网上信息的,但是当你输入关键词后,出现了成百上千个查询结果,而且这些结果中并没有多少你想要的东西,面对着一堆信息垃圾,这时你的心情该是如何的沮丧。...
  • 征服Ajax+Lucene构建搜索引擎 李刚 宋伟 邱哲 征服Ajax系列丛书 人民邮电出版社 本书分Ajax和Lucene两部分,共16章,内容涵盖了JavaScript的基础、层叠样式表CSS、DOM与JavaScript、AjaX工作流程、Ajax实例、Ajax的...
  • 《Lucene搜索引擎开发进阶实战》共12章,分为四部分,第一部分首先介绍网络爬虫和Web搜索,然后讲述Lucene的概念和架构;第二部分通过一个小实例,并结合为文本创建索引来讲解其中的一些方法和类;第三部分主要基于...
  • 关于搜索引擎原理的详细解读

    千次阅读 2019-03-20 15:20:51
    搜索引擎,通常指的是收集了万维网上几千万到几十亿个网页并对网页中的每一个词(即关键词)进行索引,建立索引数据库的全文搜索引擎。当用户查找某个关键词的时候,所有在页面内容中包含了该关键词的网页都将作为...
  • 超好用的搜索引擎推荐

    千次阅读 2020-09-26 10:35:24
    搜索引擎是我们信息资料搜集的最重要的渠道之一,用搜索引擎查找信息资料需要使用恰当的关键词和一些搜索技巧。目前国内主要的搜集引擎有如下10个,近期还有较多行业 型搜索冒出来,需找专业型行业资料可以使用行业...
  • 搜索引擎实验报告

    千次阅读 2019-12-12 13:56:18
    网络中用于各种功能的搜索引擎非常多,在求职,找工作方面,智联招聘、拉勾网等也比较优秀,但数据都过于集中,却缺少重点。对于即将毕业的大学生,要花费大量的时间在多个网站投递简历,无疑增加了学生们的工作量。...
  • 搜索引擎的基本工作原理

    万次阅读 2017-03-14 15:03:58
    1.搜索引擎的概念 在浩瀚的网络资源中,搜素引擎(Search Engine)是一种网上信息检索工具,它能帮助用户迅速而全面地找到所需要的信息。我们这样对搜索引擎进行定义:搜索引擎是一种能够通过因特网接受用户的查询命令...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 134,505
精华内容 53,802
热门标签
关键字:

web搜索引擎的工作过程