为您推荐:
精华内容
最热下载
问答
  • 5星
    1.66MB m0_52957036 2020-08-13 00:57:20
  • 5星
    3.01MB bala5569 2021-03-17 09:08:55
  • 5星
    15KB qq_33657870 2021-06-05 14:32:11
  • 5星
    639KB weixin_42565036 2021-01-19 10:55:36
  • 5星
    7.89MB qq_38412739 2021-03-30 08:32:42
  • 5星
    23.01MB qq_31988139 2021-06-23 10:04:56
  • 5星
    18KB m0_52957036 2020-04-15 07:24:27
  • 5星
    7.75MB z07041330 2020-12-02 09:43:40
  •   关于百度以及其它搜索引擎的工作原理,其实大家已经讨论过很多,但随着科技的进步、互联网业的发展,各家搜索引擎都发生着巨大的变化,并且这些变化都是飞快的。我们设计这个章节的目的,除了从官方的角度发出...

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

    抓取建库

    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

    展开全文
    sunxianghuang 2019-01-13 16:52:00
  • 第一节 搜索引擎原理1、基本概念 来源于中文wiki百科的解释:(网络)搜索引擎指自动从互联网搜集信息,经过一定整理以后,提供给用户进行查询的系统。 来源于英文wiki百科的解释:Web search engines providean ...

    第一节 搜索引擎原理

    1、基本概念

        来源于中文wiki百科的解释:(网络)搜索引擎指自动从互联网搜集信息,经过一定整理以后,提供给用户进行查询的系统。
         来源于英文wiki百科的解释:Web search engines providean interface to search for information on the World WideWeb.Information may consist of web pages, images and other types offiles.(网络搜索引擎为用户提供接口查找互联网上的信息内容,这些信息内容包括网页、图片以及其他类型的文档)

    2、分类

         按照工作原理的不同,可以把它们分为两个基本类别:全文搜索引擎(FullTextSearch Engine)和分类目录Directory)。

        分类目录则是通过人工的方式收集整理网站资料形成数据库的,比如雅虎中国以及国内的搜狐、新浪、网易分类目录。另外,在网上的一些导航站点,也可以归属为原始的分类目录,比如“网址之家”(http://www.hao123.com/)。

        全文搜索引擎通过自动的方式分析网页的超链接,依靠超链接和HTML代码分析获取网页信息内容,并按事先设计好的规则分析整理形成索引,供用户查询。

        两者的区分可用一句话概括:分类目录是人工方式建立网站的索引,全文搜索是自动方式建立网页的索引。(有些人经常把搜索引擎和数据库检索相比较,其实是错误的)。

    3、全文搜索的工作原理

        全文搜索引擎一般信息采集、索引、搜索三个部分组成,详细的可由搜索器、分析器、索引器、检索器和用户接口等5个部分组成

         (1)信息采集(Webcrawling):信息采集的工作由搜索器和分析器共同完成,搜索引擎利用称为网络爬虫(crawlers)、网络蜘蛛(spider)或者叫做网络机器人(robots)的自动搜索机器人程序来查询网页上的超链接。

        进一步解释一下:"机器人"实际上是一些基于Web的程序,通过请求Web站点上的HTML网页来对采集该HTML网页,它遍历指定范围内的整个Web空间,不断从一个网页转到另一个网页,从一个站点移动到另一个站点,将采集到的网页添加到网页数据库中。"机器人"每遇到一个新的网页,都要搜索它内部的所有链接,所以从理论上讲,如果为"机器人"建立一个适当的初始网页集,从这个初始网页集出发,遍历所有的链接,"机器人"将能够采集到整个Web空间的网页。

         网上后很多开源的爬虫程序,可以到一些开源社区中查找。

        关键点1:核心在于html分析,因此严谨的、结构化的、可读性强、错误少的html代码,更容易被采集机器人所分析和采集。例如,某个页面存在<body这样的标签或者没有</body></html>这样的结尾,在网页显示是没有问题的,但是很有可能会被采集拒绝收录,在例如类似../../***.htm这样的超链接,也有可能造成蜘蛛无法识别。这也是需要推广web标准的原因之一,按照web标准制作的网页更容易被搜索引擎检索和收录。

        关键点2:搜索机器人有专门的搜索链接库,在搜索相同超链接时,会自动比对新旧网页的内容和大小,如果一致,则不采集。因此有人担心修改后的网页是否能被收录,这是多余的。

        (2)索引(Indexing):搜索引擎整理信息的过程称为“建立索引”。搜索引擎不仅要保存搜集起来的信息,还要将它们按照一定的规则进行编排。索引可以采用通用的大型数据库,如ORACLE、Sybase等,也可以自己定义文件格式进行存放。索引是搜索中较为复杂的部分,涉及到网页结构分析、分词、排序等技术,好的索引能极大的提高检索速度。

        关键点1:虽然现在的搜索引擎都支持增量的索引,但是索引创建依然需要较长的时间,搜索引擎都会定期更新索引,因此即便爬虫来过,到我们能在页面上搜索到,会有一定的时间间隔。

         关键点2:索引是区别好坏搜索的重要标志。

        (3)检索(Searching):用户向搜索引擎发出查询,搜索引擎接受查询并向用户返回资料。有的系统在返回结果之前对网页的相关度进行了计算和评估,并根据相关度进行排序,将相关度大的放在前面,相关度小的放在后面;也有的系统在用户查询之前已经计算了各个网页的网页等级(PageRank 后文会介绍),返回查询结果时将网页等级大的放在前面,网页等级小的放在后面。

        关键点1:不同搜索引擎有不同的排序规则,因此在不同的搜索引擎中搜索相同关键词,排序是不同的。


    第二节 百度搜索引擎工作方式

        我所知道的百度搜索:由于工作的关系,小生有幸一直在使用百度的百事通企业搜索引擎(该部门现已被裁员,主要是百度的战略开始向谷歌靠拢,不再单独销售搜索引擎,转向搜索服务),据百度的销售人员称,百事通的搜索核心和大搜索的相同,只有可能版本稍低,因此我有理由相信搜索的工作方式大同小异。下面是一些简单介绍和注意点:

         1、关于网站搜索的更新频率

        百度搜索可以设定网站的更新频率和时间,一般对于大网站更新频度很快,而且会专门开设独立的爬虫进行跟踪,不过百度是比较勤奋的,中小网站一般也会每天更新。因此,如果你希望自己的网站更新得更快,最好是在大型的分类目录(例如yahoosina网易)中有你的链接,或者在百度自己的相关网站中,有你网站的超链接,在或者你的网站就在一些大型网站里面,例如大型网站的blog。

         2、关于采集的深度

        百度搜索可以定义采集的深度,就是说不见得百度会检索你网站的全部内容,有可能只索引你的网站的首页的内容,尤其对小型网站来说。

         3、关于对时常不通网站的采集

        百度对于网站的通断是有专门的判断的,如果一旦发现某个网站不通,尤其是一些中小网站,百度的自动停止往这些网站派出爬虫,所以选择好的服务器,保持网站24小时畅通非常重要。

         4、关于更换IP的网站

        百度搜索能够基于域名或者ip地址,如果是域名,会自动解析为对应的ip地址,因此就会出现2个问题,第一就是如果你的网站和别人使用相同的IP地址,如果别人的网站被百度惩罚了,你的网站会受到牵连,第二就是如果你更换了ip地址,百度会发现你的域名和先前的ip地址没有对应,也会拒绝往你的网站派出爬虫。因此建议,不要随意更换ip地址,如果有可能尽量独享ip,保持网站的稳定很重要。

         5、关于静态和动态网站的采集

        很多人担心是不是类似asp?id=之类的页面很难被收集,html这样的页面容易被收集,事实上情况并没有想的这么糟,现在的搜索引擎大部分都支持动态网站的采集和检索,包括需要登陆的网站都可以检索到,因此大可不必担心自己的动态网站搜索引擎无法识别,百度搜索中对于动态的支持可以自定义。但是,如果有可能,还是尽量生成静态页面。同时,对于大部分搜索引擎,依然对脚本跳转(JS)、框架(frame)、

    Flash超链接,动态页面中含有非法字符的页面无可奈何。

         6、关于索引的消失

        前面讲过,搜索的索引需要创建,一般好的搜索,索引都是文本文件,而不是数据库,因此索引中需要删除一条记录,并不是一件方便的事情。例如百度,需要使用专门的工具,人工删除某条索引记录。据百度员工称,百度专门有一群人负责这件事情——接到投诉,删除记录,手工。当然还能直接删除某个规则下的所有索引,也就是可以删除某个网站下的所有索引。还有一个机制(未经验证),就是对于过期的网页和作弊的网页(主要是网页标题、关键词和内容不匹配),在重建索引的过程中也会被删除。

         7、关于去重

        百度搜索的去重不如谷歌的理想,主要还是判别文章的标题和来源地址,只要不相同,就不会自动去重,因此不必担心采集的内容雷同而很快被搜索惩罚,谷歌的有所不同,标题相同的被同时收录的不多。

        补充一句,不要把搜索引擎想得这么智能,基本上都是按照一定的规则和公式,想不被搜索引擎惩罚,避开这些规则即可。


    第三节 谷歌搜索排名技术

        对于搜索来说,谷歌强于百度,主要的原因就是谷歌更加公正,而百度有很多人为的因素(这也符合我国的国情),google之所以公正,源于他的排名技术PageRank。

         很多人知道PageRank,是网站的质量等级,越小表示网站越优秀。其实PageRank是依靠一个专门的公式计算出来的,当我们在google搜索关键词的时候,页面等级小的网页排序会越靠前,这个公式并没有人工干预,因此公正。

         PageRank的最初想法来自于论文档案的管理,我们知道每篇论文结尾都有参考文献,假如某篇文章被不同论文引用了多次,就可以认为这篇文章是篇优秀的文章。

         同理,简单的说,PageRank能够对网页的重要性做出客观的评价。PageRank 并不计算直接链接的数量,而是将从网页 A 指向网页 B 的链接解释为由网页 A对网页 B 所投的一票。这样,PageRank 会根据网页 B 所收到的投票数量来评估该页的重要性。此外,PageRank还会评估每个投票网页的重要性,因为某些网页的投票被认为具有较高的价值,这样,它所链接的网页就能获得较高的价值。

         Page Rank的公式这里省略,说说影响Page Rank的主要因素

        1、指向你的网站的超链接数量(你的网站被别人引用),这个数值越大,表示你的网站越重要,通俗的说,就是其它网站是否友情链接,或者推荐链接到你的网站;

        2、超链接你的网站的重要程度,意思就是一个质量好的网站有你的网站的超链接,说明你的网站也很优秀。

        3、网页特定性因素:包括网页的内容、标题及URL等,也就是网页的关键词及位置。


    第四节 新网站如何应对搜索

         以下内容是对上面分析的总结:

    1、搜索引擎为什么不收录你的网站,存在以下可能(不绝对,根据各自情况不同)

        (1)没有任何指向链接的孤岛网页,没有被收录的网站指向你的超链接,搜索引擎就无法发现你;
        (2)网站中的网页性质及文件类型(如flash、JS跳转、某些动态网页、frame等)搜索引擎无法识别;
         (3)你的网站所在服务器曾被搜索引擎惩罚,而不收录相同IP的内容;
         (4)近期更换过服务器的IP地址,搜索引擎需要一定时间重新采集;
         (5)服务器不稳定、频繁宕机,或者经不起爬虫采集的压力;
        (6)网页代码劣质,搜索无法正确分析页面内容,请至少学习一下HTML的基本语法,建议使用XHTML;
        (7)网站用robots(robots.txt)协议拒绝搜索引擎抓取的网页;
        (8)使用关键词作弊的网页,网页的关键词和内容严重不匹配,或者某些关键词密度太大;
         (9)非法内容的网页;
         (10)相同网站内存在大量相同标题的网页,或者网页的标题没有实际含义;

    2、新站如何做才正确(仅供参考)

         (1)和优秀的网站交换链接;
         (2)广泛登录各种大网站的网站目录列表;
        (3)多去质量好的论坛发言,发言要有质量,最好不要回复,发言中留下自己网站地址;
        (4)申请大网站的博客(新浪、网易、CSDN),并在博客中推广自己的网站;
         (5)使用好的建站程序,最好能生成静态页面和自动生成关键词;
        (6)重视每个网页的标题,以及<head>区域,尽量把符合的关键词放在这些容易被搜索索引的位置,重视文章的开头部分,尽可能在文章的开始部分使用类似摘要的功能(可以学学网易的文章样式)。

        例如“基于开源jabber(XMPP)架设内部即时通讯服务的解决方案”;

        标题部分:<title>基于开源jabber(XMPP)架设内部即时通讯服务的解决方案- 肥龙龙(expendable)的专栏 -CSDNBlog</title>
         关键词部分:<meta name="keywords"cCOLOR:#c00000">安装,">
         文章描述部分:<metaname="description" cCOLOR:#c00000">是著名的即时通讯服务服务器,它是一个自由开源软件,能让用户自己架即时通讯服务器,可以在Internet上应用,也可以在局域网中应用。

        XMPP(可扩展消息处理现场协议)是基于可扩展标记语言(XML)的协议,它用于即时消息(IM)以及在线现场探测。它在促进服务器之

    间的准即时操作。这个协议可能最终允许因特网用户向因特网上的其他任何人发送即时消息,即使其操作系统和浏览器不同。XMPP的技术来自

    于Jabber,其实它是Jabber的核心协定,所以XMPP有时被误称为Jabber协议。Jabber是一个基于XMPP协议的IM应用,除Jabber之外,XMPP还支持很多应用。

    展开全文
    qq_36747842 2017-07-20 08:13:46
  • 随笔-百度谷歌搜索引擎的实现实录引言第一步分词第二步匹配关键词第三步清洗获得的文章第四步排序输出重点说明 引言 本文只是介绍实现思路针对使用技术进行介绍,无相关代码。 推荐技术solr ,hadoop ,lucene/...

    引言

    本文只是介绍实现思路针对使用技术进行介绍,无相关代码。
    推荐技术solr ,hadoop ,lucene/ElasticSearch,nutch一条龙服务

    第一步分词

    推荐使用IKanalyze或者mmseg4j,对中英文良好的支持,作用为将一句话拆成多个词汇。
    亦可使用多个分词技术

    第二步匹配关键词

    将获得的关键词逐一进入数据库进行匹配(当然实际是去缓存)
    匹配结束后会获得每个词汇的一些文章

    第三步清洗获得的文章

    对获得的文章进行清洗,留下包含多个关键词的文章,去掉只含少量关键词的文章

    第四步排序输出

    推荐三种算法模型
    1.贝叶斯概率模型
    2.向量空间模型
    3.词频概率模型

    重点说明

    因为本身涉及算法和缓存不涉及业务
    1.有能力的话算法层面调用python
    2.缓存使用一致性算法的分布式缓存注意缓存雪崩即可
    3.前端方面采用AJAXRPC让相应更加迅速

    展开全文
    seal_li 2018-12-07 11:52:42
  • 网盘搜索引擎---》既然是搜索引擎---》最终都是蜘蛛爬寻程序 蜘蛛爬寻就必须有网,网在哪里呢,百度都给你了,但现在隐藏了如下图 图上红色字体 【粉丝】,和【关注】 这俩货百度给隐藏了,原来都显示,记住是...

    先给出大家示例:百度网盘搜索示例参考https://pan.90xz.com/

    一、搜索引擎结构

    网盘搜索引擎---》既然是搜索引擎---》最终都是蜘蛛爬寻程序

    蜘蛛爬寻就必须有网,网在哪里呢,百度都给你了,但现在隐藏了如下图

    图上红色字体 【粉丝】,和【关注】 这俩货百度给隐藏了,原来都显示,记住是隐藏了,相当于程序的警告,无视他,当然你也看不到。

    网就在粉丝和关注这里,关注相当于吴亦凡,粉丝就是吴亦凡的一个小粉丝,如果其中一个小粉丝在关注下苍老师,那粉丝就无穷无尽了。这就是蜘蛛爬寻的网的结构。

    二、主要结构API--js调用地址

    以下{0}=237243058=用户Id

    1.获取粉丝

    http://pan.baidu.com/pcloud/friend/getfanslist?query_uk={0}&limit=24&start=0&bdstoken=null&channel=chunlei&clienttype=0&web=1

    2.获取关注

    http://pan.baidu.com/pcloud/friend/getfollowlist?query_uk={0}&limit=24&start=0&bdstoken=null&channel=chunlei&clienttype=0&web=1

    3.获取分享

    http://pan.baidu.com/pcloud/feed/getsharelist?t=时间&category={1}&auth_type=1&request_location=share_home&start=0&limit=100&query_uk={0}&channel=chunlei&clienttype=0&web=1&bdstoken=null

    {1}=0、1、2、3、4、5、6==全部分享\专辑\图片\文档\音乐\视频\其他 这个自己一一对应吧

    4.获取分享专辑

    http://yun.baidu.com/pcloud/album/getlist?t=时间&start=0&limit=100&query_uk={0}&channel=chunlei&clienttype=0&web=1&bdstoken=null

    以上返回都是json数组

    采用的是Newtonsoft.Json 反序列化类。

    Newtonsoft.Json  用法http://www.cnblogs.com/yanweidie/p/4605212.html

    三、需要实现功能

    1.代理IP

    毕竟百度不是全心全意支持你爬寻他的,必须用匿名代理Ip来实现爬寻API 

    C# 通过代理发HTTP请求 https://q.cnblogs.com/q/88682/

    2.这么多资源怎么让人看到呢

    盘古+Lucene .net  实现 大牛盘古介绍使用http://www.cnblogs.com/eaglet/category/143427.html

    2千万资源搜索速度还是挺不错的,示例:百度网盘搜索引擎https://pan.90xz.com/ 90网盘

    3. mvc+NVelocity 模板解析

    NVelocity  简介http://www.cnblogs.com/wysky/archive/2007/12/06/985832.html

    四、其他要说的事

    1.觉得不错的话多多推荐一下吧:百度网盘搜索引擎https://pan.90xz.com/ 90网盘 ^_^

    2.功能实现容易,推广难,再推荐一下吧

    3.源码太多 方法最重要就不展示了,源码下载分享-----卡卡卡

    4.学习提高 kindle电子书:

    https://book.90xz.com?wid=1

    it电子书 https://book.90xz.com/IT?wid=1 登陆才能查看

    5.以上所贴博客园文章是作者自己百度/谷歌搜索所得,自己参考了

     

     

     

     

     

    转载于:https://www.cnblogs.com/yang0000meng/p/6647954.html

    展开全文
    weixin_34066347 2017-03-30 18:57:00
  • huazai520064 2021-01-10 19:42:29
  • aoyoujj 2019-03-20 15:20:51
  • weixin_45747731 2021-04-04 15:52:17
  • haohzhang 2019-02-16 18:24:14
  • juan0728juan 2016-12-01 17:39:22
  • x526967803 2017-08-21 09:07:33
  • qq494370 2020-04-22 19:03:45
  • qq_44273429 2020-09-14 23:36:25
  • iteye_13349 2013-05-09 21:14:13
  • 53KB u010465760 2013-04-26 14:22:52
  • qq_36759224 2019-09-16 19:55:49
  • qq_38905818 2020-01-02 13:40:59
  • heiyeshuwu 2021-11-19 03:14:35
  • qq_31967569 2018-07-10 16:01:59
  • qq_41985652 2019-03-23 12:33:28
  • ecdoing 2010-10-04 16:48:00
  • IPSOU 2019-06-05 19:47:13
  • 472KB smsc1234 2021-02-03 22:58:32
  • u010599509 2016-06-28 09:56:01
  • 49KB weixin_38514526 2021-01-20 07:58:35

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 16,343
精华内容 6,537
关键字:

百度谷歌搜索引擎原理