1.2 了解搜索引擎
想要学好搜索引擎营销的相关知识,首先要了解什么是搜索引擎,搜索引擎是怎样工作的。本节主要从搜索引擎的概念、搜索引擎的发展历史、搜索引擎的分类、搜索引擎的工作原理等几个方面进行详细介绍。
1.2.1 搜索引擎的概念
搜索引擎(search Engine)是指根据一定的策略、运用特定的计算机程序从互联网上搜集信息,在对信息进行组织和处理后,为用户提供检索服务,将用户检索相关的信息展示给用户的系统。
1.2.2 搜索引擎的发展历史
了解搜索引擎的发展历程,有助于SEO人员理解搜索引擎的发展、变革,对未来有更准确的预期。从搜索引擎技术变革角度来说,可以将搜索引擎的发展分为以下4个时代。
1. 第一代:分类目录时代
这个时代也可以称为“导航时代”,Yahoo 和国内的 hao123是这个时代的代表。通过人工收集整理,把属于各个类别的高质量的网站或者网页分门别类。如在hao123这个网站看到的几乎都是一些分类网址,用户可以根据分级目录来查找高质量的网站。这种方式是纯人工的方式,井未采取什么高深的技术手段。
采用分类目录搜索引擎收录的网站质量一般比较高,但是这种方式的可扩展性不强,绝大部分网站不能被收录。
2. 第二代:文本检索时代
到了文本检索时代,搜索引擎查询信息的方法则是将用户所输入的查询信息提交给服务器,服务器通过查阅,返回给用户一些相关度较高的信息。
这一代的搜索引擎采用了经典的信息检索模型,比如布尔模型、向量空间模型以及概率模型,通过这些信息检索模型来计算用户查询关键字与网页文本内容的相关度,将相关度高的返回给用户。早期的搜索引擎多采用这种模式,例如Alta Vista、Excite。
3. 第三代:链接分析时代
这一代的搜索引擎充分利用了网页之间的链接关系。简单来说,网页链接代表了一种推荐关系,与如今网站中使用的外部链接相似,所以通过链接分析可以在海量内容中找到重要的网页。这种重要性本质上是对网页流行程度的一种衡量,因为被推荐次数多的网页代表了它具有流行性。搜索引擎通过结合网页流行性和内容相关性来改善搜索质量。
Google 率先提出井使用 PageRank 链接分析技术,井大获成功,这一成就在当时引起了学术界和其他商业搜索引擎的极度关注。后来学术界以此成就为基础,提出了更多的改进链接分析算法。目前,大多数搜索引擎都使用这种链接分析技术。
采用链接分析技术能够有效改善搜索结果的质量,但是这种搜索引擎井未考虑用户的个性化要求,所以只要输入的搜索信息相同,所有用户都会获得相同的搜索结果。另外,许多网站拥有者为了使网站获得更高的搜索排名,针对链接分析算法提出了不少链接作弊方案,这样导致搜索结果的质量不断变差。
4. 第四代:用户中心时代
目前的搜索引擎大都可以归入第四代,即以理解用户需求为核心。当用户输入查询的请求时,查询同一个关键词的用户可能有不同的需求。比如同样输入“苹果”作为查询词,一个追捧iphone的用户和一位果农的搜索结果会有很大的差异。甚至是同一个用户,输入相同的查询词,也会因为时间和场合不同而得到不同的搜索结果。而目前的搜索引擎大都致力于解决同一个问题:如何能够从用户所输入的一个简单的关键词来判断用户真正的查询请求。
为了能够获取用户的真正需求,目前搜索引擎大都做了很多技术方面的尝试,比如利用用户发送查询词的时间和地理位置等信息,或者利用用户过去查询的信息、历史记录等技术手段,来试图理解用户此时此地的真正需求。
1.2.3 搜索引擎的分类
搜索引擎主要可以分为三类:全文搜索引擎、目录搜索引擎和元搜索引擎,具体介绍如下。
1. 全文搜索引擎
全文搜索引擎是指计算机索引程序通过扫描文章中的每一个词,对每一个词建立一个索引,指明该词在文章中出现的次数和位置,当用户查询时,检索程序就根据事先建立的索引进行查找,井将查找的结果反馈给用户的检索方式。这个过程类似于通过字典中的检索字表查字的过程。
全文搜索引擎是目前应用最广泛的搜索引擎,其中最具代表性的全文搜索引擎为Google、百度。全文搜索引擎的检索方法主要分为按字检索和按词检索两种。
(1)按字检索
按字检索是指对文章中的每一个字都建立索引,在检索时将词分解为字的组合。对于不同的语言文字而言,字有不同的含义,比如英文中字与词实际上是统一的,而在中文中字与词则有较大区别。
(2)按词检索
按词检索是指对文章中的词,即语义单位建立索引,检索时按词检索,井且可以处理同义项等。英文等西方文字由于按照空白切分词,因此实现上与按字处理类似,添加同义处理也很容易。中文等东方文字则需要切分字词,以达到按词索引的目的,这也是当前全文检索技术尤其是中文全文检索技术中的一个难点。
2. 目录搜索引擎
目录搜索引擎指的是以人工或半自动的方式搜集信息,由编辑人员查看信息后,人工进行信息摘要,井将信息置于事先确定的分类框架中。这些信息主要面向网站,提供目录浏览服务和直接检索服务。最具代表性的目录搜索引擎为Yahoo和新浪分类目录搜索。
目录搜索引擎虽然有搜索功能,但严格意义上不能称为真正的搜索引擎,只是按目录分类的网站链接列表而己。用户完全可以按照分类目录找到所需要的信息,不依靠关键词进行查询。目录搜索引擎因为加入了人的智能,所以信息准确、导航质量高,缺点是需要人工介入、维护量大、信息量少、信息更新不及时。
3. 元搜索引擎
元搜索引擎就是通过一个统一的用户界面帮助用户在多个搜索引擎中选择和利用合适的(可以是同时利用若干个)搜索引擎来实现检索操作,是对分布于网络的多种检索工具的全局控制机制。具有代表性的元搜索引擎为360搜索。
一个完整的元搜索引擎由三部分组成,即检索请求提交机制、检索接口代理机制和检索结果显示机制。
· 检索请求提交机制:负责实现用户“个性化”的检索设置要求,包括调用哪些搜索引擎、检索时间限制、结果数量限制等。
· 检索接口代理机制:负责将用户的检索请求“翻译”成满足不同搜索引擎“本地化”要求的格式。
· 检索结果显示机制:负责所有元搜索引擎检索结果的去重、合井、输出处理等。
元搜索引擎的出现,对于那些需要连续不断地使用不同的搜索引擎重复相同信息检索的人来说,是一个福音。使用元搜索引擎可同时对几个搜索引擎进行检索,获得分级编排的检索。
1.2.4 常见的搜索引擎
1.2.3节中介绍了搜索引擎的分类,其中也提到了百度、360搜索等搜索引擎,本节就介绍一些常见的搜索引擎。目前国内主流的4大搜索引擎有谷歌、百度、360搜索及搜狗搜索,图1-2和图1-3所示分别为2017年8月全球搜索引擎市场份额和2017年8月中国搜索引擎市场份额。
图1-2 2017年8月全球搜索引擎市场份额
图1-3 2017年8月中国搜索引擎市场份额
1. Google
Google(谷歌)公司成立于1998年9月4日,由拉里·佩奇和谢尔盖·布林共同创建,被公认为全球最大的搜索引擎。根据图1-2所示的2017年8月的统计数据可以看到,Google在全球搜索引擎的市场份额排名中排在第一位,占全球搜索引擎市场份额的92.5%。
Google是一家位于美国的跨国科技企业,业务包括互联网搜索、云计算、广告技术等,同时开发井提供大量基于互联网的产品与服务,其主要利润来自于AdWords等广告服务。Google目前的主要业务有谷歌搜索、谷歌广告、谷歌地图、谷歌火星、谷歌月球、YouTube、Android、Chrome、Google Play、Gmail等。
2. 百度
从图1-2的数据中可以看出,百度在全球搜索引擎市场份额的排名中排在第四位,但是百度是排名前五的搜索引擎中唯一的中文搜索引擎。
百度每天处理来自138个国家超过数亿次的搜索请求,每天有超过7万用户将百度设为首页,用户通过百度搜索引擎可以搜到世界上最新最全的中文信息,它拥有全球最大的中文网页库。同时,百度在中国各地分布的服务器能直接从最近的服务器上把所搜索的信息返回给当地用户,使用户享受极快的搜索传输速度。
百度目前提供网页搜索、音乐搜索、图片搜索、百度新闻、百度贴吧、百度知道、百度新闻、百度百科等主要产品和服务,同时也提供多项满足用户更加细分需求的搜索服务,如地图搜索、黄页搜索、文档搜索、邮编搜索、政府网站搜索、视频搜索、百度翻译、百度识图、报读票务等服务;除了上述提到的搜索服务外,百度还在个人服务领域提供了包括百度影音、百度云、百度输入法等服务。
3. 神马搜索
神马搜索是UC(优视)和阿里巴巴于2013年成立合资公司后推出的移动搜索引擎,2014年4月28日,UC正式宣布与阿里巴巴合作共同发布旗下移动搜索引擎品牌——神马搜索。从图1-2中可以看出,神马搜索约占国内搜索引擎市场份额的10%。
4. 360搜索
国内搜索引擎市场份额中排在第三位的是360搜索,从图1-2中可以看出360搜索约占国内搜索引擎市场份额的7.91%。
360搜索属于元搜索引擎,是通过一个统一的用户界面帮助用户在多个搜索引擎中选择和利用合适的(甚至是同时利用若干个)搜索引擎来实现检索操作,是对分布于网络的多种检索工具的全局控制机制。它同时将信息聚合在一起实现网络工具化、个性化的发展需求,提升网络使用效率,让用户更快地从繁复的搜索系统里解放出来,让上网搜索更轻松有效。
360搜索主要包括新闻搜索、网页搜索、视频搜索、MP3搜索、图片搜索、地图搜索、问答搜索、学术搜索等,通过互联网信息的及时获取和主动呈现,为广大用户提供实用和便利的搜索服务。
5. 搜狗
搜狗搜索是搜狐公司于2004年8月3日推出的全球首个第三代互动式中文搜索引擎。从图1-2中可以看出搜狗搜索约占国内搜索引擎市场份额的3.94%。搜狗搜索致力于中文互联网信息的深度挖掘,帮助中国上亿网民加快信息获取速度。
搜狗搜索是全球首个百亿规模中文搜索引擎,于2007年1月收录中文网页达百亿,再创全球中文网页收录量新高。其每日网页更新达5亿,用户可直接通过网页搜索而非新闻搜索,获得最新新闻。同时在导航型和信息型的两种查询结果中,分别以94%和67%的准确度领先业界。
搜狗旗下的产品有搜狗百科、搜狗问问、音乐搜索、图片搜索、新闻搜索、地图搜索、网址导航、博客搜索、视频搜索、知识搜索、搜狗实验室、搜狗百宝箱等等。
1.2.5 搜索引擎的工作原理
搜索引擎的工作原理非常复杂,大致可以分为三个阶段:爬行与抓取、预处理、排名,如图1-4所示,具体介绍如下。
图1-4 搜索引擎的工作原理
1. 爬行与抓取
爬行与抓取是搜索引擎第一步工作,也就是在互联网上发现、搜集网页信息,同时对信息进行提取和建立索引库。“爬行和抓取”的具体内容包括以下几点。
(1)搜索引擎蜘蛛
搜索引擎用来爬行和访问页面的程序被称为“蜘蛛”(spider)或网络机器人,这是一种按照一定规则自动抓取互联网信息的程序或者脚本。
蜘蛛的作用就是在互联中浏览信息,然后把这些信息都抓取到搜索引擎的服务器上,然后建立索引库。我们可以把蜘蛛比作一个用户,然后这个用户访问某一个网站后,把该网站的内容保存到自己的计算机上。
搜索引擎蜘蛛与浏览器一样,也有表明自己身份的代理名称,站长可以在网站日志文件中看到搜索引擎的特定代理名称,从而知道哪些搜索引擎蜘蛛何时爬行和抓取了自己网站页面。常见的搜索引擎蜘蛛有:百度蜘蛛、雅虎中国蜘蛛、雅虎英文蜘蛛、Google蜘蛛、微软Bing蜘蛛、搜狗蜘蛛、搜搜蜘蛛、有道蜘蛛。
(2)跟踪链接
为了抓取更多的页面,搜索引擎蜘蛛会跟踪页面上的链接,从一个页面爬行到下一个页面,就像蜘蛛在蜘蛛网上爬行一样。整个互联网是由相互连接的网站及页面组成,从理论上讲,蜘蛛从任何一个页面出发,都可以顺着链接爬行到互联网上的其他页面。
由于网站及页面链接结构异常复杂,蜘蛛需要采取一定的爬行策略才能爬完网上所有的页面。搜索引擎蜘蛛的爬行策略分为两种,一种是深度优先搜索,另外一种是广度优先搜索。
① 深度优先搜索
深度优先搜索指的是蜘蛛沿着发现的链接一直向前爬行,直到再也没有其他链接,然后返回到第一个页面,再沿着另一个链接一直向前爬行。
图1-5所示为一个无向图,如果蜘蛛从A点开始爬行(访问次序井不是唯一的,第二个点既可以是C点也可以是B、D点),则得到如下一个访问过程:A→B→E,这时没有下一条路了,就会回溯到A点,然后继续下一访问过程:A→C→F→H→G→D(没有路,最终回到A),回到A点后,A点没有未访问过的相邻结点,本次搜索结束。
② 广度优先搜索
广度优先搜索是指蜘蛛在一个页面上发现多个链接时,不是顺着一个链接一直向前,而是把页面上所有的第一层页面都爬一遍,然后再沿着第二层页面上发现的链接爬向第三层链接。如图1-6所示,蜘蛛从A页面顺着链接爬行到B、C、D页面,直到A页面上的所有链接都爬行完了,再从B页面的链接爬行到E、F页面中。
图1-5 深度优先搜索例图
图1-6 广度优先搜索例图
在深度优先搜索算法中,深度越大的结点越先得到扩展。如果在搜索中把算法改为按结点的层次进行搜索,本层的结点没有搜索处理完时,不能对下层结点进行处理,即深度越小的结点越先得到扩展,也就是说先产生的结点先得以扩展处理,这种搜索算法称为广度优先搜索法。
从理论上讲,无论是深度优先还是广度优先,只要给蜘蛛足够的时间,都能爬行完整个网络。但在实际工作中,蜘蛛的宽带资源和时间都是有限的,所以不可能爬完所有的页面。深度优先和广度优先通常是混合使用的,因为这样既可以照顾到更多的网站(广度优先),也能照顾到一部分网站的页面(深度优先),同时还考虑了页面权重、网站规模和外部链接等因素。
(3)吸引蜘蛛
虽然理论上蜘蛛会抓取所有的网页,但实际上会因为多种因素影响而不能抓取所有的网页。因此,SEO人员想要自己网站有更多的页面被收录,就要想办法吸引蜘蛛爬行,那么哪些因素可以吸引蜘蛛爬行呢?
· 网站和页面权重。一般来说,质量高、时间久的网站,权重都比较高,搜索引擎蜘蛛爬行的次数也比较频繁。这种网站上页面被爬行的深度比较高,收录的网页也非常多。
· 页面的更新频率。蜘蛛每次爬行都会把页面数据存储起来,如果第二次爬行时发现页面与第一次收录的内容完全相同,说明页面没有更新,蜘蛛也就不会经常抓取了。页面内容经常更新,蜘蛛会更加频繁地访问页面,页面出现新的链接,自然会被蜘蛛更快地跟踪、抓取。
· 网站的原创内容。原创内容对于百度蜘蛛的吸引力非常大,也是搜索引擎蜘蛛每天都需要的。对于原创文章的撰写,站长需要有敏锐的观察力和文字功底,原创内容要有吸引力,不能老生常谈,或者观点模糊,否则就会失去对蜘蛛的吸引力。
· 网站地图。网站地图就像是一个指向标,只有清晰明了的指向标,才能指引蜘蛛抓取的路线。如果网站地图清晰明了,就非常容易吸引蜘蛛爬行。相反,如果网站内部链接很乱,蜘蛛经常迷路,那么蜘蛛就很少会爬行,不利于抓取网站页面。
(4)地址库
为了避免蜘蛛重复爬行和抓取网址,搜索引擎会建立一个地址库,记录下己经被发现但还没有被抓取的页面,以及己经被抓取的页面。地址库中URL主要来源于以下4个方面:
· 人工录入的种子网站。
· 蜘蛛抓取页面后,从HTML中解析出新的链接URL,与地址库中的数据进行对比,如果地址库中没有的该网址,就存入待访问地址库。
· 站长通过搜索引擎页面提交表格提交进去的网址。
· 站长通过XML网站地图、站长平台提交的网址。
蜘蛛按重要性从待访问地址库中提取 URL,访问井抓取页面,然后把这个 URL 从待访问地址库中删除,放进己访问地址库中。
一般来说,搜索引擎都会提供一个表格,供站长提交网址。不过这些提交来的网址都只是存入地址库而己,是否收录还要看页面的重要性。搜索引擎所收录的绝大部分页面是蜘蛛自己跟踪链接得到的。可以说提交页面基本上是毫无用处的,搜索引擎更喜欢自己沿着链接发现新页面。
(5)文件储存
文件储存是指搜索引擎蜘蛛抓取的数据被存入原始页面数据库。其中的页面数据与用户浏览器得到的HTML是完全相同的。每个URL都有一个独特的文件编号。
(6)爬行时检测内容
众所周知,在搜索引擎索引环节中会进行去重处理,其实在蜘蛛爬行的时候己经在进行检测,当蜘蛛爬行和抓取文件时会进行一定程度的复制内容检测,遇到权重低的网站上大量转载或抄袭内容时,很可能不再继续爬行。
所以对于新站来说,切莫采集和抄袭其他网站内容,这也是为什么很多站长查看日志的时候发现了蜘蛛,但是页面却没有被抓取的原因,因为蜘蛛在爬行时发现是重复内容就放弃抓取,所以蜘蛛就只停留在爬行过的阶段。
2. 预处理
蜘蛛对网站进行了爬行和抓取之后,还需要对页面进行预处理,也被称为“索引”。因为搜索引擎数据库中拥有数以亿计的网页,用户输入搜索后,搜索引擎的计算量太大,很难在极短的时间内返回搜索结果,因此必须对页面进行预处理,为最后的查询排名做准备。预处理主要包括如下几个步骤。
(1)提取文字
现阶段的搜索引擎主要以文字内容为基础。蜘蛛抓取到的页面中的HTML代码,除了用户在浏览器上可以看到的可见文字外,还包含了大量的 HTML 格式标签、Javascript 程序等无法用于排名的内容。搜索引擎预处理首先要做的就是从HTML文件中去除标签和程序,提取出用于排名处理的网页面文字内容。
(2)中文分词
中文分词是中文搜索引擎特有的一步工作内容,中文的词与词之间没有任何分隔符,一个句子里面所有字和词都是连在一起的。因此,搜索引擎首先要分辨哪几个字是组成一个词的,哪些字本身就是一个词。中文分词有两种方法,一种是基于词典匹配分词法,另一种是基于统计分词法。
· 基于词典匹配分词,是指将待分析的一段汉字与一个事先造好的词典中的词进行匹配,在待分析汉字串中扫描到词典中己有的词条,则说明匹配成功,或者可以说切分出一个单词。
· 基于统计分词,是指对大量的文字样本进行分析,计算出字与字相邻出现的概率,字与字之间相邻出现的次数越多,就越可能形成一个单词。基于统计分词方法的优势是对新出现的词反应更快速,也有利于消除歧义。
在实际使用中,会综合使用两种分词方法。搜索引擎对页面的分词取决于词库的规模、准确性和分词算法的好坏,而不是取决于页面本身,所以从分词角度来说,SEO人员对于网站能做的很少。唯一能做的是在页面上用某种形式提示搜索引擎,某几个字应该被作为一个词处理,尤其在可能产生歧义的时候,比如在页面标题、h1标签及黑体中出现关键词。如果某页面是关于“舞蹈培训”的内容,那么可以把“舞蹈培训”这几个字标为黑体这样搜索引擎对页面进行分析时就会知道标为黑体的是一个词。
(3)去停止词
停止词是一些在页面内容中出现频率很高,但是对内容没有任何影响的词,如“的”“地”“得”之类的助词,还有“啊”“哈”“呀”之类的感叹词,“从而”“以”“却”之类的副词或者介词。除中文外还有一些英文的常见停止词,如the、a、an、to、of等。
因为它们对页面的主要意思没什么影响,故搜索引擎在索引页面之前会去掉这些停止词,使索引数据主题更为突出,减少无谓的计算量。
(4)消除噪声
噪声井不是指网页中的嘈杂的声音,而是指页面上对页面主题没有贡献的内容,比如版权声明文字、导航条、广告等,这些内容对页面主题只能起到分散作用。因此搜索引擎需要识别井消除这些噪声,排名时不使用噪声内容。消噪的基本方法是根据HTML标签对页面分块,区分出页头、导航、正文、页脚、广告等区域,在网站上大量重复出现的区块柱柱属于噪声。对页面进行消噪后,剩下的才是页面主体内容。
(5)去重
同一篇文章经常会重复出现在不同网站及同一个网站的不同网址上,搜索引擎井不喜欢这种重复性的内容。用户搜索这些信息时,如果在前几页看到的都是来自不同网站的同一篇文章,会影响用户体验。虽然这些网页内容具有相关性,但是搜索引擎更希望返回结果中只有一篇相同的文章,所以在进行索引前还需要识别和删除重复内容,这个过程可以称为“去重”。
了解了搜索引擎的去重算法,SEO人员就应该知道只是在文章中简单地添加“的”“地”“得”或者调换段落顺序这种“伪原创”方法,井不能逃过搜索引擎的去重算法。因为这样的操作井没有改变文章内容中特征关键词,而且搜索引擎的去重算法很可能不止于页面级别,而是进行到段落级别,即便是混合不同文章、交叉调换段落顺序也不能使转载和抄袭变成原创。
(6)正向索引
经过提取文字、分词、消除噪声、去重后,搜索引擎得到的才是独特的、能反映页面主体内容的、以词为单位的内容。完成上述工作后,搜索引擎索引程序就可以提取关键词,按照分词程序划分关键词,将页面转换为一个关键词组成的集合,同时记录每一个关键词在页面上的出现频率、出现次数、格式(如出现在标题标签、黑体、H标签、锚文本等)、位置(如页面第一段文字等)。这样,每一个页面都可以记录为一串关键词集合,其中每个关键词的词频、格式、位置等权重信息也都记录在案。
(7)倒排索引
正向索引还不能直接用于排名。假设用户搜索关键词2,如果只存在正向索引,排名程序需要扫描所有索引库中的文件,找出包含关键词2的文件,再进行相关性计算。这样的计算量无法满足实时返回排名结果的要求。因此需要搜索引擎将正向索引数据库重新构造成倒排索引,把文件对应到关键词的映射转换为关键词到文件的映射。
(8)链接关系计算
目前主流的搜索引擎排名因素中都包含网页之间的链接流动信息。搜索引擎在抓取页面内容后,必须事前计算出页面上有哪些链接指向哪些页面,每个页面有哪些导入链接,链接使用了什么锚文本,这些复杂的链接指向关系形成了网站和页面的链接权重。
由于页面和链接数量巨大,网上的链接关系又时时处在更新中,因此链接关系及(权重)PR的计算要耗费很长时间。
(9)特殊文件处理
除了HTML文件外,搜索引擎通常还能抓取和索引以文字为基础的多种文件类型,如PDF、Word、WPs、XLs、PPT、TXT 文件等。我们在搜索结果中也经常会看到这些文件类型。不过,搜索引擎也有自己无法处理的网页内容,例如图片、视频、Flash等,还包括脚本和程序等。虽然搜索引擎在识别图片及从 Flash 中提取文字内容方面有些进步,不过距离直接靠读取图片、视频、Flash内容返回结果的目标还很远。
3. 排名
经过搜索引擎蜘蛛抓取页面,索引程序计算得到倒排索引后,搜索引擎就准备好对用户搜索进行处理了,搜索引擎面对的用户大部分是通过在搜索框输入搜索词后得到一个列表页面,这个搜索结果页面是基于大量的搜索索引库建立起来的,那么搜索引擎是如何完成排名这一环节的呢?
(1)对提交的搜索请求进行分析
用户在搜索引擎上输入关键词,提交搜索请求后,搜索引擎便会对该搜索请求进行详细分析。分析搜索请求包括以下几点。
· 中文分词。与页面搜索时一样,搜索词也必须进行中文分词,将查询字符串转换为以词为基础的关键词组合。
· 去停止词。与页面索引时一样,搜索引擎也需要把搜索词中的停止词去掉,最大限度地提高排名的相关性及效率。
· 指令处理。完成分词后,搜索引擎的默认处理方式是在关键词之间使用“与”的逻辑。比如说在搜索“美白产品”时,搜索引擎就会把它分为两个词组来查找,搜索引擎排序时默认为,用户寻找的是既包含“美白”,也包含“产品”的页面。只包含“美白”不包含“产品”或者只包含“产品”不包含“美白”的结果页面,都会被搜索引擎认为是不符合条件的。
· 拼写矫正。用户如果在搜索时,输入了明显的错别字或英文单词拼写错误,搜索引擎会提示用户正确的用字或拼写。例如,在搜索引擎中搜索“临床医学”却输入为“领床医学”,这时搜索引擎就会出现提示,如图1-7所示。
图1-7 拼写矫正
· 整合搜索触发。某些搜索词会触发整合搜索,比如明星姓名就经常触发图片和视频内容,当前的热门话题又容易触发资讯内容。哪些词触发哪些整合搜索,也需要在搜索词处理阶段计算。
(2)文件匹配
搜索引擎蜘蛛时刻都在爬行和抓取,同时还不断对抓取的数据进行整理、归纳和储存。搜索词经过处理后,搜索到的是以词为基础的关键词集合。文件匹配阶段就是找到含有所有搜索关键词的所有文件。在搜索部分提到的倒排索引使得文件匹配能够快速完成,如图1-8所示。
图1-8 倒排索引快速匹配文件表
这个图就是典型的倒排索引快速匹配文件表,假设用户搜索“关键词1”和“关键词7”,排名程序只要在倒排索引中找到“关键词1”和“关键词7”,就能找到分别含有这两个词的搜索页面。
(3)初始子集筛选
子集就是为了更加快速地满足用户的需要,搜索引擎需要从所有的相关页面中进行选择,只计算权重较高的页面返回给用户,这个过程就是初始子集筛选。
当用户搜索某个关键词时,包含这个关键词的页面有成千上万,甚至几十万、上百万。搜索引擎面对如此海量的数据如果一一进行匹配的话需要耗费很长时间,这样会直接影响用户体验,所以为了更好地满足用户的需求,实际中搜索引擎只会选择那些权重高的页面去匹配。
(4)相关性计算
选出初始子集后,就要对子集页面中关键词的相关性进行计算。计算相关性是排名中最重要的一步。影响相关性的因素主要有以下几个方面。
· 关键词常用度。经过分词后的多个关键词,对整个搜索字符串的意义贡献井不相同。越常用的词对搜索词的意义贡献越小,越不常用的词对搜索词的意义贡献越大。
· 链接的使用和页面权重。做好外部链接对网站的排名、收录、权重有很大的关系,网站的整体权重提高了,被蜘蛛抓取的频率就越快,也就是说网站被收录了更多的页面。
· 关键词出现的位置。如果所优化的关键词出现在标题中,而且位置越靠左越有利于排名,同时在正文中关键词最好在首段的第一句话中,后面的内容中少量出现几次即可。
· 关键词密度和字频。一般情况下,在没有关键词堆积时,搜索词在页面中出现的次数越多,密度越高,说明页面内容与搜索词相关性越高。不过这只是一个大致规律,实际情况未必如此,所以相关性计算还有其他因素。出现频率及密度只是相关性因素的一部分,而且重要程度越来越低。
· 关键词的距离。中文搜索引擎最大的特点就是中文分词,比如“北京网络营销培训”,如果这个词出现几次,搜索引擎就会认为这是一个词,但是若某一篇文章出现“北京”和“网络营销培训”,且这两个词出现的距离较远的话,就被认为相关性不高。
(5)排名过滤及调整
选出匹配文件子集、计算相关性后,网页的排名基本确定。之后,搜索引擎还会有一些过滤算法,对排名进行轻微调整,其中最主要的过滤就是施加惩罚。虽然某些有作弊嫌疑的页面会按照正常的权重和相关性计算被排在前面,但是,这些页面一旦被发现,就会被搜索引擎施加惩罚,将它们的排名调到后面,从而起到警告的作用。
(6)排名显示
所有排名确定后,排名程序会调用原始页面的标题标签、说明标签、快照日期等数据显示在页面上。有时搜索引擎需要动态生成页面摘要,而不是调用页面本身的说明标签。