96折话费充值入口-惠花生活小程序

SEO人员需要了解搜索引擎的工作原理,知道它是如何工作的,才能够更好地对网站进行优化。搜索引擎的基本工作原理包括如下四个过程:抓取建库,检索排序,外部投票,结果展现。图2-2所示为搜索引擎工作原理流程图。百度官方也发布了《搜索引擎工作原理》,百度从官方的角度发出了一些声音,纠正了一些互联网上对搜索引擎的误读。


搜索引擎蜘蛛的工作原理 抓取建库

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

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

spider抓取系统的基本框架图,其中包括链接存储系统、链接选取系统、DNS解析服务系统、抓取调度系统、网页分析系统、链接提取系统、链接分析系统、网页存储系统。Baiduspider通过这种系统的通力合作,完成对互联网页面的抓取工作。

图2-3

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

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

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

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

(2)常用抓取返回码示意
下面简单介绍几种百度支持的返回码。

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

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

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

④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特征、分析页面大小及内容、分析站点规模对应抓取规模等。

聚创笔记招募合伙人

发表回复

后才能评论