搜索引擎抓取系统

作者:鼎极网络发布日期:2019-11-13浏览次数:0

  搜索引擎抓取系统概述()

  编者按:站长朋友们,今后定期都将在这里跟大家分享一些有关搜索引擎工作原理及网站运营相关的内容,今天先简单介绍一下关于搜索引擎抓取系统中有关抓取系统基本框架、抓取中涉及的网络协议、抓取的基本过程三部分。

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

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

  1spider抓取系统的基本框架

  如下为spider抓取系统的基本框架图,其中包括链接存储系统、链接选取系统、dns解析服务系统、抓取调度系统、网页分析系统、链接提取系统、链接分析系统、网页存储系统。

1.png

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

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

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

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

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

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

  3spider抓取的基本过程

  spider的基本抓取过程可以理解为如下的流程图:

2.png

  4.spider抓取过程中的策略

  spider在抓取过程中面对着复杂的网络环境,为了使系统可以抓取到尽可能多的有价值资源并保持系统及实际环境中页面的一致性同时不给网站体验造成压力,会设计多种复杂的抓取策略。以下简单介绍一下抓取过程中涉及到的主要策略类型:

  1、抓取友好性:抓取压力调配降低对网站的访问压力

  2、常用抓取返回码示意

  3、多种url重定向的识别

  4、抓取优先级调配

  5、重复url的过滤

  6、暗网数据的获取

  7、抓取反作弊

  8、提高抓取效率,高效利用带宽

  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”,认为网页目前禁止访问。如果是新urlspider暂时不抓取,短期内同样会反复访问几次;如果是已收录url,不会直接删除,短期内同样反复访问几次。如果网页正常访问,则正常抓取;如果仍然禁止访问,那么这条url也会被认为是失效链接,从库中删除。

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

  3、多种url重定向的识别

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

  4、抓取优先级调配

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

  5、重复url的过滤

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

  6、暗网数据的获取

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

  7、抓取反作弊

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

 


关键词:

  锚文本又称锚文本链接,是链接的一种形式。和超链接类似,超链接的代码是锚文本,把关键词做一个链接,指向别的网页,这种形式的链接就叫作锚文本。

  锚文本又称锚文本链接,锚文本实际上是建立了文本关键词与URL链接的关系。

  1简单介绍

1.png


  锚文本链接示意图锚文本可以作为锚文本所在的页面的内容的评估。正常来讲页面中增加的链接都会和页面本身的内容有一定的关系。服装的行业网站上会增加一些同行网站的链接或者一些做服装的知名企业的链接;另一方面,锚文本能作为对所指向页面的评估。

  锚文本能的描述所指向页面的内容,个人网站上增加的链接,锚文本为 “搜索引擎”页面添加的链接一般来说都应该跟页面有直接相关的联系,搜索引擎可以根据指向某一个网页的链接的锚文本描述来判断该网页的内容属性。锚文本对搜索引擎起的作用还表现为可以收集一些搜索引擎不能索引的文件。

  2作用

  1、有助于搜索引擎更快的爬行网站

  对于搜索引擎来说,锚文本的作用之一就是有引导作用。合理的分布站内锚文本,会使搜索引擎蜘蛛更快速的爬行网站目录,这和我们经常说的面包屑导航有异曲同工之妙,这也是对搜索引擎友好的一种表现。

  2、提高排名

  另一方面,合理的站内锚文本指向会使引擎更加准确的认识文章的内容所要描述信息,从而使长尾关键词排名提升,网站权重增加。外部链接的锚文本也会给网站很高的关键权重。

  3、增加用户体验

  当用户浏览某一个页面的时候,可能文章的内容对用户而言不是非常的有用,这个时候锚文本就起到了一种引导性的作用,通过锚文本,用户往往会更快更准确的找到自己需要的资料。那么对于没有做网站锚文本的网站而言,当用户没有找到自己需要的东西的时候,他们常见的动作就是关闭页面,这也从反面验证了站内锚文本对于用户体验的作用。

  4、用来分析对手优化策略

  整个互联网说得简单一点,就是页面与页面的链接,以及链接的文本说明。SEOer在进行竞争对手分析的时候,可以通过锚文本链接导向以及锚文本的文本说明(其实即使竞争对手要做排名的关键词)考究到竞争对手的优化侧重点。可以采用画站内链接导向图的方式来分析!

  3特点

  1、内链锚文本促进网页收录,如果网站只收录首页而迟迟不放出内容页,你就该从锚文本链接处深入思索了。比如笔者的网站,在大部分文章页面中,都包含了主要关键词如seo、网络营销等等锚文本链接,进行全站自动索引。此外,每篇文章都通过锚文本指向了网站内的相关文章,锚文本所在区域不仅仅局限于网站底部与侧边栏,文章中间穿插的锚文本导出权重。让蜘蛛在抓取过程中能够充分索引到内容页面。

  2、内链锚文本提高用户体验,做网站不要仅仅从seo的角度考虑问题,大家有没有发现很多网站并不怎么考虑优化,反而能有不错的排名,网站内链的锚文本建设亦是如此,在网页内容的描述过程中,为网友有兴趣或者疑惑的地方添加锚文本,不仅能大大加强网站PV数量、赢得用户,也能为百度权重评分加上一个亮点。

  3、内链锚文本是提升网站权重的法宝,网站百度权重或者网站pr的计算,跟外链数量和质量有直接关系,这点毋庸置疑。而对于单个网页而言,内链锚文本无疑是权重划分的利器,页面内容互相链接形成一张网。文章页的外部链接,更多的不是其他域名带来的,而是网站内其他页面带来的。通过内链锚文本,优化长尾关键词,则可以取得意想不到的成绩。

  4、在网站排名优化工作中站外锚文本优化比站内优化举足轻重的地位。在不做站内优化,只做站外优化的情况下,网站排名仍可达到良好效果,反之则优化难度相对大很多。一名SEOER每天大部分的工作时间都是投入在网站外部优化中。这里简要提几个需要注意的事项。

  多样化

  在网站外部锚文本制作过程中,核心关键词锚文本要多样化。要怎样多样化呢?例如我们在跟朋友交换链接时,可以做上:武汉网站优化 、武汉做网站优化、武汉做优化等。要特别注意关键词的稀释度。

  曝光度

  既要锚文本的同时也要网址文本的存在是网站的通常之举,因为正常情况下网站的外部链接不可能都是锚文本,而应是自然的分布锚文本和网址曝光度。

  增长率

  如何控制锚文本的增长速度?在前一个关键词排名还没上来前就不断做下一个关键词的锚文本,这是不可取的。至于为什么,相信读者朋友们都很清楚的认识这一点,我就不缀叙原因了。

  以上有关锚文本建设工作中应注意的事项都是本人多年工作经验总结,都是实实在在的内容,对于新手朋友来说,应该具有很大的参考价值。这里拿出来与大家一起分享,希望能共同进步。锚文本链接,实际上也就是超级链接,它是建立文本关键词和链接之间的一个桥梁,在超级链接里可以是一个关键词,也可以是一句话。它的作用就是指导用户鼠标点击具体会指向哪里。锚文本是影响网站关键词排名的一个相当重要的因素。

  4操作方法

  既然我们需要通过优化锚文本来提高关键词的排名,那么关键词的选择就非常关键.锚文本一定要使用跟所链接网页直接相关的关键词,并且通常是搜索量较大的描述性关键词,应尽量避免使用"更多或者点击这里"等无实际意义的词汇。

  锚文本的长度尽量简短,避免使用一个句子或者一段话作为锚文本.包括1-2个关键词的锚文本为佳,长也尽量不要超过60个字符(30个汉字)。

  虽然为了提升关键词的排名,我们需要针对某些关键词部署尽可能多的链接,但也要避免过度优化.其中包括避免全部的锚文本都使用完全相同的关键词,如以SEO论坛为例,尽量避免所有的锚文本都使用"SEO论坛",而是混合使用"SEO学习网"等品牌词.同时,链接来源的网站也应尽量多样化,而非大量链接均来自几个网站。

  当链接到公司网站时,通常使用的锚文本多为"某某公司网站"等形式,如"苹果电脑官方网站".但应尽量在品牌名称后加入相关流量词的词汇,如"苹果电脑"。

  锚文本优化不仅仅是针对外部链接,网站的内部链接同样需要遵循相似的原则进行优化,尽量使用包含关键词的锚文本.但在优化内部链接的锚文本时,更要避免过度优化.例如通常指向首页的内部链接锚文本为"首页"或"主页",如果刻意将所有"首页"改成"SEO论坛"等词汇,并不会对"SEO论坛"这个词的排名造成影响,反而在某些情况下影响用户体验和对排名起到反作用.并且同一链接,无需在一个页面出现多次,如网站的某一篇文章,多次提到"SEO学习网"这个品牌,但只需链接到相关的SEO学习页面一次即可,无需多次链接。

  当链接到网站的图片时,更应该注意在锚文本中尽可能的描述图片内容.因为搜索引擎还无法很好的读取图片内容,搜索引擎的图片搜索会通过分析锚文本获取一定的图片内容信息,因此好的锚文本应用可以改善网站图片在图片搜索中的排名。

  需要对网站进行定期的锚文本监控,确保网站内外部链接的锚文本在理想的范围之内.如果发现锚文本分布欠佳,应进行及时的优化与改进.锚文本的监测可以通过一些SEO软件,或者可以通过Google的管理员工具查看网站的主要锚文本。

  可通过一些SEO软件或者网站,对竞争对手的锚文本进行监控,并相应的改善自身网站的锚文本战略。

  5注意事项

  顾名思义,站内锚文本是针对网站内部,主要是以文章来说事。网站优化锚文本指的就是文章页优化,而文章开篇和结尾等出现的一些关键词锚文本就属于细节方面的优化了,这就涉及关键词布局,关于这方面的话题以后再做详细探讨。

  长短

  在一位博友的博客中,发现他经常性的把整段句子都做上了锚文本,并指向同一个页面。我不知道他这样做的目的是什么,但我想这位朋友肯定是不可取的。由此引发了我对这一现象的思考:多数新手朋友都有这样的困惑,做锚文本时,到底是应该只做关键词还是做整段句子?把整段句子做上锚文本的作用就是增加网站内部相关文章的收录和用户体验,而在提升某个关键词的作用上几乎没用。所以如果出于提高关键词排名的目的,那么在为网站做锚文本时,好避免将整段句子做成锚文本。

  位置

  在浏览网页时,我们会发现某关键词会出现很多次,而且都做成了锚文本。有些文章甚至是关键词出现多少次就做多少个锚文本,目的就是为了突出这个关键词,其实这样做不可取,甚至可能是作弊黑帽的行为。在这里给大家提一个比较好的建议:给个出现的关键词加上锚文本,以后出现的相关关键词加上粗线即可,这样可以让搜索引擎知道你的网站想要突出的是什么,从而达到优化关键词排名的作用。

  以上4条是锚文本优化过程中常见的问题,同时也是容易做到的几点。这里拓展一些其他事项:如锚文本数量与文章内容字符长度之间的规律关系,不可能20个句子,10个锚文本。其次是核心关键词的优化,链接到首页的可达90%,与之相关度很高的页面则链接10%,这样做也可以达到很自然的效果。

  6设置原则

  软性植入,符合文章需要,切莫生硬嵌套

  对所在文章有促进作用,二者能够做到相得益彰,切不可胡乱添加

  能急人之所急,延展用户需求,挖掘用户额外需求并满足

  锚文本数量不宜太多,否则会降低当前页面权重

  内部优化

  、同一页面下相同关键词不要出现不同的链接。

  第二、同一页面下相同链接不要出现不同关键词。

  第三、同一页面需求关键词链接可根据页面文字以及质量形成比例。

  第四、同一页面下关键词链接不要超过5个,同时包括核心关键词以及性信息内容、文章标题链接。

  第五、网站下核心关键词占有首页一级链接在80%,信息索引页可以占有20%。

  第六、网站多个核心关键词以时间段进行网站优化内部链接。

  第七、网站页面链接与整体内部链接数量多少及比例需要根据网站在搜索引擎中的权重实际情况进行。这点比较难掌握,如果没掌握好的话网站很容易降权。

  对SEO来说,锚文本就是这种认知的具体体现。为了说明某个网页代表什么关键词,你可以在标题标签、网页内容等重要位置出现关键词。但你这个网页内容本身是什么并不重要,搜索引擎看重的是其他网页对你的认知。因此在其他网页的锚文本出现关键词才是重要的。

  就内部链接优化而言,做好锚文本将对目标关键词和长尾关键词的排名提高,起到显著作用。

  就外部链接优化而言,如果只是单纯的链接,就没有办法让搜索引擎对链接所指向网页的内容有一个好的认知,这个因素也会影响网页排名。

  7实际应用

  超链接提升整体权重,而锚文本看似是主要提高关键词排名,但是,它其实是对这个链接进行一个描述,就像一个网站写了标题、关键词、页面描述这些,一个网站没写这些,同时告诉搜素引擎、用户那个页面是做什么的,相当于给那个页面帖上了一个标签的性质,同时也有提高权重的作用,而超链接只是指引一个连接,但是并没有对这个链接进行一个描述,所以我还是觉得锚文本是比超链接重要!超链接就像我们坐车见到一个美景,但是不知道它的名字,而文本链接则是见到了一个美景,但是同时知道了它的名字,那么就可以在我脑海里留下印象。

  但是超链接和锚文本有时候是需要分场合的,有的平台用超链接会比用锚文本合适,有的平台是锚文本比用超链接合适,毕竟有时候侧重广告营销方面的话,用超链接可以起到展现域名的作用,如果用户不点击那个锚文本链接,就压根不知道域名是什么。

  定向锚文本指的就是一个词与其指向的页面具有相关性。比如说关键词是seo,并且带有链接,打开这个链接出现一个网页时,这个网页与seo这个词是相关的,那么这就是定向锚文本了。

  定向锚文本主要有几个重要意义:

  定向锚文本是搜索引擎更加认为你的文章是原创的,因为采集或者抄袭,锚文本不会太精准。

  定向锚文本可以增加网站的权重。

  定向锚文本可以带动内页的权重。