搜索引擎工作原理分析——SEO十日谈之二
发布日期:2015-12-23浏览:2881
昨天我们聊了SEO的定义,大致知道了SEO的中文意思是“搜索引擎优化”,是在研究搜索引擎工作原理的基础上,对我们自己的网站进行合理的内部优化与外部优化,使网站的关键词排在搜索引擎的前面,为网站带来目标流量,产生销售额与品牌收益。
那么,我们今天就来分析一下,搜索引擎的工作原理,为我们后期SEO的学习打下坚实基础。
一、 搜索引擎是什么时候诞生的呢?
搜索引擎的诞生,不是一个偶然,而是一个必然。因为,随着互联网络的形成,网络上会出现越来越的多的网站页面。上网的用户,面对这么多的信息,就得考虑,怎么去查找我们想要的信息呢?
在几千年之前,我们的古人就已经发明了“搜索引擎”,比如《本草纲目》,上面有成千上万的药材条目,为了方便用户查找,就在书的前面加上了“索引目录”,其实,这就是搜索引擎技术的一个思维原形。
1. 早在1993年之前,就出现了算不上搜索引擎的搜索引擎,当时的搜索引擎是查询FTP文件服务器上的相关文件,还不能搜索网站页面文件。
2. 1994年David Filo和杨致远共同创办了超级目录索引——人工编缉的雅虎目录
3. 1998年9月Google公司正式成立!
4. 2001年,百度做为搜索引擎正式上线,并提供搜索服务。
5. 2003年-2009年微软的搜索引擎成立,并 改名为必应——Bing
6. 2004年,8月, Google上市!
7. 2005年,8月,百度上市!
8. 2010年8月25日,雅虎彻底结束了它自己的搜索时代,正式使用Bing搜索数据。
9. 2010年,8月,国际上的搜索市场,排名第一的谷歌占84%、第二的雅虎占6.35%、第三位的百度占3.31%(主要是因为中国人品众多)、第四位是Bing占3.30%(应该是第三位)
时至今日,主流的搜索引擎,就是上面四个了。而中文搜索引擎的霸主,当然就是百度了,从世界范围来看,百度还有很长的坡要爬,更何况,现如今,各个中文搜索引擎都在发力竞争中文搜索市场。
二、 搜索引擎工作原理的三大步:
第一步:爬行和抓取 :简单地说,就是每个搜索引擎都会派出自己的一个程序(蜘蛛或机器人),沿着自己知道的网址库,去跟踪网页上面的所有链接,抓取互联网上面网站页面的HTML数据,并存入数据库。当然,在这个过程中,会进行一次简单的去重,也就是将重复的网页内容去掉。
这个步骤里面,有几个名词:
1. 蜘蛛或机器人指的是搜索引擎编写的一个小程序,这个程序的主要任务是每天多次去互联网上的各个网站上去爬行,看是否有能发现新的网站,或能否发现老网站上添加了新的文章内容,一旦发现了新的内容,则会将其拍照,并带回搜索引擎的数据库。虽然说叫“爬行”,但实际是,这个蜘蛛程序是不知疲倦地以光速在互联网上穿梭,寻找新的信息。
2. 地址库:指的存放是蜘蛛程序计划去互联网访问的网站地址。这就好比你要出远门旅游时,要带上一本地图手册一样。
3. 抓取的HTML数据是什么样子呢?你把任何一个网页打开,在左右两边的空白处,点右键,“查看源文件”,你看到的这个内容就是HTML数据,包括了很多代码和方字。
4. 去重:指的是,互联网上,有很多人喜欢把别人网站上的文章,直接发到自己网站上去。完成相同HTML数据,搜索引擎是不会都存到数据库的。会将重复的、相同的网页数据去掉。
第二步:建立索引:就是对抓取的数据做一个预处理的过程。为什么要做预处理呢?因为,刚抓取回的HTML数据是不能直接参与排名的,里面有很多代码和重复的内容。
1、首先,将HTML数据里的文字与代码分离。留下文字,去除代码。这个可以用站长工具里的“模拟蜘蛛或机器人抓取”功能查询看到。
2、其次,去除代码后,看到的就是一堆网页里的文字,其次,搜索引擎运用自己的一个相当于新华词典的虚拟词典,去对照比较,看这个网页里的文字中,哪些是一个词语;另一种方法就是基于统计分析,看哪几个字经常在一起,则基本可以判断为一个词语。这就叫做中文分词。
只有把一堆文字,分成一个一个的词语,才可以分析出这个文章跟哪个词的相关性高
3、再其次,为了更准确地了解这个HTML数据所反应的实际内容,了解这个内容是跟哪些词相关,还得将网页中经常出现的高频率助词去掉,将网页中相关的头部和底部,或左侧内容去掉,只留下网页中的文章正文内容。去掉无关文章意思的助和和网页中重复的版块内容后,再将这个文件与其它文件对比分析,看是否这个文件,之前是否已收录过。
4、然后,建立索引,也就是经过上面的步骤后,分析有哪些关键词是这个文件里的核心词。一个文件会重点对应几个核心词建立主索引,建好了这个主索引后,当有用户在搜索这个文件里的主核心词时,这个主索引就会将相应的文件展示出来;但是,当用户在搜索一个非核心的词语时,刚才建立的主索引就用不上了。所以,除了主索引外,还得针对利用分词技术分出来的文件里的所有词,建立一个次索引。
5、最后,经过上面的工作后,基本可以判断抓取的文件内容是和哪几个关键词相关,但是,在建立索引时,仅凭文件自身中的一些关键词的高频率是不能准备判断这个文件与哪个关键词最相关。文件自身关键词的频率是自己可以随便增加的(在2008年以前,很多做SEO的前辈都是用“关键词堆砌”的手法来操作排名),所以,搜索引为了寻找一个更科学的方法来判断这个网页文件与某几个关键词的相关性,引入了“链接关系计算”,通过从其它网页上链接到你网页的链接文字来判断,你这个网页是和哪个词相关。
其实,这就好比是美国选总统,首先自己上台做竞选演讲,然后让民众来投票。光听自己说怎么好,是不科学的,如果很多人都说你好,那才更能说明问题。链接关系就好比是其它网页对你这个页面的投票评比。
6、再最后,就是对抓取文件中的一些特殊文件做处理,比如:除了HTML外,还有PDF、Word、WPS、XLS、PPT、TXT文件等等,目前不能处理图片、视频、FLASH、脚本程序。
第三步:显示排名结果:这个步骤是我们看得见的,是用户直接操作的。
首先,做为用户,我们在百度里输入“搜索引擎优化培训”,这里百度的搜索程序,第一步要做的不是去索引数据库里查找相关文件。
1、 对“搜索引擎优化培训”这句话,做中文分词处理,确定用户搜索的是“搜索”、“引擎”、“优化”、“培训”这四个词,还是“搜索引擎优化培训”这一个词。
2、 要将用户输入的这句话里面的助词、符号和无意义的词去掉
3、 其次,还会判断用户输入的词中是否有错别字,发现错字,还得提醒。比如:输入“唐醋排骨”,提示如下:您要找的是不是: 糖醋排骨。
4、 最后就是开始到索引库里去查找相应信息
其次,搜索引擎开始查找用户真正想查找的正确的关键词,找到相匹配的相关文件,这个文件的数量,将是非常巨大的,因为,在互联网上,针对每一个词,都会有N多个网页文件。
不过,搜索引擎不会将这N多的文件拿来计算,应该谁排在前面。而是在计算之前先选出一个了集,百度提供的搜索结果,最多有76页。这样算来的话,大概参与最终排名结果应该有700多个记录,谷歌提供100页的记录,就也就有1000多个文件参与某一个关键词的排名。
再其次,选出这些子集后,这700多个或者1000多个文件,倒底哪个文件应该排在前面呢?这就应该先分析这个关键词在文件中出现的次数,出现的位置,有哪些文字链接向这个文件等等一些方法来了解文件与某个关键词的相关性。
然后,搜索引擎除了会跟据上面说的来计算相关性以外,还会对某些关键词做特殊处理,特殊处理,主要是指对少数网站做相应的惩罚,指的是用不正当、不合理的手段,为了获取排名而做排名的网站。比如:百度11位(百度将你网站的关键词长期定格在了第二页的第一名也就是自然排名的第11名),、谷歌的负6、负30、负950(也就是将你网站的各个关键词统一下降6、30、950位)等算法。
然后,经过了上面步骤以后,就可以显示用户的搜索结果了,我们可以看到,搜索任何一个关键词,看到的每一个条目里,都可以看到,网站的标题(title)、描述(Description
)、百度快照、时间等等信息。
最后,在上面的步骤里,已经提供了用户的搜索结果 ,按道理,整个搜索过程已经完成,但搜索引搜索的工作还没有完成,搜索引擎会为了节省用户的搜索时间,而做一个统计,统计有哪些词,是很多用户会经常搜索的词,将这些词的索引,做一个缓存。以后,当有用户搜索这个词时,搜索引擎能够更快速地提供搜索结果。
后续服务,搜索引擎为了做好售后服务,它还会跟踪用户对某个排在前面的搜索结果,做相应的点击次数、停留时间的统计,来分析用户对于搜索引擎的这个排名结果,做一个分析。看看是否都喜欢点击排在前面的结果,而且点击进去以后停留很长的时间。如果能做到这些,说明用户是喜欢搜索引擎的这些排名结果的。反之,搜索引擎会思考,是否得改变一下排名规则,将排在后面的,用户更喜欢的结果排到前面来。
这个原理也说明了,我们网站做了百度竞价能提高网站关键词排名,一旦你不做百度竞价,有可能你的排名会下降,只是有可能,并不一定,这个因素不是影响排名的主要因素。之前听说一些客户,自己不接百度客服的电话,或者说,自己对百度客服人员的态度不好,结果导致自己网站在百度里搜索不到,说是百度人为故意把自己网站删除了。其实,了解了搜索引擎的工作原理,应该知道,这个人为控制排名的可能性是很小的,因为百度没那么多的精力来关注你那个针整个互联网来说,一个微不足道的网站。
到此为止,我们了解了搜索引擎的工作原理,我们通过分析了解搜索引擎的工作原理,无非就是为了更好地做好SEO。
我个人认为,通过分析搜索引擎的工作原理,我们至少应该明白了,做SEO,应该注意以下一些事项:
1、 在网络上抄袭别人的文章发到自己网站上去,百度是不会收录的。因为,在第一步抓取的过程中,有一次去重。在第二步索引时又有一次去重,所以重复的内容是很难被百度收录的。其实,我们在网上查资料时,我们自己也很不喜欢看到几个网站上都有同一篇文章。
2、 简单的,现在的搜索引擎不会将简单的关键词堆砌的文章排到搜索引擎的前面,还会利用链接关系来计算相关性。
3、 关键词在网页中的出现的频次固然重要,关键词在网页中出现的位置也很重要。
4、 链连关系计算时,外部链接比内部链接重为重要。
那么,我们今天就来分析一下,搜索引擎的工作原理,为我们后期SEO的学习打下坚实基础。
一、 搜索引擎是什么时候诞生的呢?
搜索引擎的诞生,不是一个偶然,而是一个必然。因为,随着互联网络的形成,网络上会出现越来越的多的网站页面。上网的用户,面对这么多的信息,就得考虑,怎么去查找我们想要的信息呢?
在几千年之前,我们的古人就已经发明了“搜索引擎”,比如《本草纲目》,上面有成千上万的药材条目,为了方便用户查找,就在书的前面加上了“索引目录”,其实,这就是搜索引擎技术的一个思维原形。
1. 早在1993年之前,就出现了算不上搜索引擎的搜索引擎,当时的搜索引擎是查询FTP文件服务器上的相关文件,还不能搜索网站页面文件。
2. 1994年David Filo和杨致远共同创办了超级目录索引——人工编缉的雅虎目录
3. 1998年9月Google公司正式成立!
4. 2001年,百度做为搜索引擎正式上线,并提供搜索服务。
5. 2003年-2009年微软的搜索引擎成立,并 改名为必应——Bing
6. 2004年,8月, Google上市!
7. 2005年,8月,百度上市!
8. 2010年8月25日,雅虎彻底结束了它自己的搜索时代,正式使用Bing搜索数据。
9. 2010年,8月,国际上的搜索市场,排名第一的谷歌占84%、第二的雅虎占6.35%、第三位的百度占3.31%(主要是因为中国人品众多)、第四位是Bing占3.30%(应该是第三位)
时至今日,主流的搜索引擎,就是上面四个了。而中文搜索引擎的霸主,当然就是百度了,从世界范围来看,百度还有很长的坡要爬,更何况,现如今,各个中文搜索引擎都在发力竞争中文搜索市场。
二、 搜索引擎工作原理的三大步:
第一步:爬行和抓取 :简单地说,就是每个搜索引擎都会派出自己的一个程序(蜘蛛或机器人),沿着自己知道的网址库,去跟踪网页上面的所有链接,抓取互联网上面网站页面的HTML数据,并存入数据库。当然,在这个过程中,会进行一次简单的去重,也就是将重复的网页内容去掉。
这个步骤里面,有几个名词:
1. 蜘蛛或机器人指的是搜索引擎编写的一个小程序,这个程序的主要任务是每天多次去互联网上的各个网站上去爬行,看是否有能发现新的网站,或能否发现老网站上添加了新的文章内容,一旦发现了新的内容,则会将其拍照,并带回搜索引擎的数据库。虽然说叫“爬行”,但实际是,这个蜘蛛程序是不知疲倦地以光速在互联网上穿梭,寻找新的信息。
2. 地址库:指的存放是蜘蛛程序计划去互联网访问的网站地址。这就好比你要出远门旅游时,要带上一本地图手册一样。
3. 抓取的HTML数据是什么样子呢?你把任何一个网页打开,在左右两边的空白处,点右键,“查看源文件”,你看到的这个内容就是HTML数据,包括了很多代码和方字。
4. 去重:指的是,互联网上,有很多人喜欢把别人网站上的文章,直接发到自己网站上去。完成相同HTML数据,搜索引擎是不会都存到数据库的。会将重复的、相同的网页数据去掉。
第二步:建立索引:就是对抓取的数据做一个预处理的过程。为什么要做预处理呢?因为,刚抓取回的HTML数据是不能直接参与排名的,里面有很多代码和重复的内容。
1、首先,将HTML数据里的文字与代码分离。留下文字,去除代码。这个可以用站长工具里的“模拟蜘蛛或机器人抓取”功能查询看到。
2、其次,去除代码后,看到的就是一堆网页里的文字,其次,搜索引擎运用自己的一个相当于新华词典的虚拟词典,去对照比较,看这个网页里的文字中,哪些是一个词语;另一种方法就是基于统计分析,看哪几个字经常在一起,则基本可以判断为一个词语。这就叫做中文分词。
只有把一堆文字,分成一个一个的词语,才可以分析出这个文章跟哪个词的相关性高
3、再其次,为了更准确地了解这个HTML数据所反应的实际内容,了解这个内容是跟哪些词相关,还得将网页中经常出现的高频率助词去掉,将网页中相关的头部和底部,或左侧内容去掉,只留下网页中的文章正文内容。去掉无关文章意思的助和和网页中重复的版块内容后,再将这个文件与其它文件对比分析,看是否这个文件,之前是否已收录过。
4、然后,建立索引,也就是经过上面的步骤后,分析有哪些关键词是这个文件里的核心词。一个文件会重点对应几个核心词建立主索引,建好了这个主索引后,当有用户在搜索这个文件里的主核心词时,这个主索引就会将相应的文件展示出来;但是,当用户在搜索一个非核心的词语时,刚才建立的主索引就用不上了。所以,除了主索引外,还得针对利用分词技术分出来的文件里的所有词,建立一个次索引。
5、最后,经过上面的工作后,基本可以判断抓取的文件内容是和哪几个关键词相关,但是,在建立索引时,仅凭文件自身中的一些关键词的高频率是不能准备判断这个文件与哪个关键词最相关。文件自身关键词的频率是自己可以随便增加的(在2008年以前,很多做SEO的前辈都是用“关键词堆砌”的手法来操作排名),所以,搜索引为了寻找一个更科学的方法来判断这个网页文件与某几个关键词的相关性,引入了“链接关系计算”,通过从其它网页上链接到你网页的链接文字来判断,你这个网页是和哪个词相关。
其实,这就好比是美国选总统,首先自己上台做竞选演讲,然后让民众来投票。光听自己说怎么好,是不科学的,如果很多人都说你好,那才更能说明问题。链接关系就好比是其它网页对你这个页面的投票评比。
6、再最后,就是对抓取文件中的一些特殊文件做处理,比如:除了HTML外,还有PDF、Word、WPS、XLS、PPT、TXT文件等等,目前不能处理图片、视频、FLASH、脚本程序。
第三步:显示排名结果:这个步骤是我们看得见的,是用户直接操作的。
首先,做为用户,我们在百度里输入“搜索引擎优化培训”,这里百度的搜索程序,第一步要做的不是去索引数据库里查找相关文件。
1、 对“搜索引擎优化培训”这句话,做中文分词处理,确定用户搜索的是“搜索”、“引擎”、“优化”、“培训”这四个词,还是“搜索引擎优化培训”这一个词。
2、 要将用户输入的这句话里面的助词、符号和无意义的词去掉
3、 其次,还会判断用户输入的词中是否有错别字,发现错字,还得提醒。比如:输入“唐醋排骨”,提示如下:您要找的是不是: 糖醋排骨。
4、 最后就是开始到索引库里去查找相应信息
其次,搜索引擎开始查找用户真正想查找的正确的关键词,找到相匹配的相关文件,这个文件的数量,将是非常巨大的,因为,在互联网上,针对每一个词,都会有N多个网页文件。
不过,搜索引擎不会将这N多的文件拿来计算,应该谁排在前面。而是在计算之前先选出一个了集,百度提供的搜索结果,最多有76页。这样算来的话,大概参与最终排名结果应该有700多个记录,谷歌提供100页的记录,就也就有1000多个文件参与某一个关键词的排名。
再其次,选出这些子集后,这700多个或者1000多个文件,倒底哪个文件应该排在前面呢?这就应该先分析这个关键词在文件中出现的次数,出现的位置,有哪些文字链接向这个文件等等一些方法来了解文件与某个关键词的相关性。
然后,搜索引擎除了会跟据上面说的来计算相关性以外,还会对某些关键词做特殊处理,特殊处理,主要是指对少数网站做相应的惩罚,指的是用不正当、不合理的手段,为了获取排名而做排名的网站。比如:百度11位(百度将你网站的关键词长期定格在了第二页的第一名也就是自然排名的第11名),、谷歌的负6、负30、负950(也就是将你网站的各个关键词统一下降6、30、950位)等算法。
然后,经过了上面步骤以后,就可以显示用户的搜索结果了,我们可以看到,搜索任何一个关键词,看到的每一个条目里,都可以看到,网站的标题(title)、描述(Description
)、百度快照、时间等等信息。
最后,在上面的步骤里,已经提供了用户的搜索结果 ,按道理,整个搜索过程已经完成,但搜索引搜索的工作还没有完成,搜索引擎会为了节省用户的搜索时间,而做一个统计,统计有哪些词,是很多用户会经常搜索的词,将这些词的索引,做一个缓存。以后,当有用户搜索这个词时,搜索引擎能够更快速地提供搜索结果。
后续服务,搜索引擎为了做好售后服务,它还会跟踪用户对某个排在前面的搜索结果,做相应的点击次数、停留时间的统计,来分析用户对于搜索引擎的这个排名结果,做一个分析。看看是否都喜欢点击排在前面的结果,而且点击进去以后停留很长的时间。如果能做到这些,说明用户是喜欢搜索引擎的这些排名结果的。反之,搜索引擎会思考,是否得改变一下排名规则,将排在后面的,用户更喜欢的结果排到前面来。
这个原理也说明了,我们网站做了百度竞价能提高网站关键词排名,一旦你不做百度竞价,有可能你的排名会下降,只是有可能,并不一定,这个因素不是影响排名的主要因素。之前听说一些客户,自己不接百度客服的电话,或者说,自己对百度客服人员的态度不好,结果导致自己网站在百度里搜索不到,说是百度人为故意把自己网站删除了。其实,了解了搜索引擎的工作原理,应该知道,这个人为控制排名的可能性是很小的,因为百度没那么多的精力来关注你那个针整个互联网来说,一个微不足道的网站。
到此为止,我们了解了搜索引擎的工作原理,我们通过分析了解搜索引擎的工作原理,无非就是为了更好地做好SEO。
我个人认为,通过分析搜索引擎的工作原理,我们至少应该明白了,做SEO,应该注意以下一些事项:
1、 在网络上抄袭别人的文章发到自己网站上去,百度是不会收录的。因为,在第一步抓取的过程中,有一次去重。在第二步索引时又有一次去重,所以重复的内容是很难被百度收录的。其实,我们在网上查资料时,我们自己也很不喜欢看到几个网站上都有同一篇文章。
2、 简单的,现在的搜索引擎不会将简单的关键词堆砌的文章排到搜索引擎的前面,还会利用链接关系来计算相关性。
3、 关键词在网页中的出现的频次固然重要,关键词在网页中出现的位置也很重要。
4、 链连关系计算时,外部链接比内部链接重为重要。