搜索引擎工作原理

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

什么是seo ?

  SEO(Search Engine Optimization),汉译为搜索引擎优化。搜索引擎优化是一种利用搜索引擎的搜索规则来提高目的网站在有关搜索引擎内的排名的方式。

  SEO就是在了解搜索引擎排名算法的基础上,对网站进行站内和站外的优化,对网站存在的弊端加以更正,提高网站关键词在搜索引擎中的排名,获得更多流量与转化率,从而获得盈利。

SEO可分为站外SEO和站内SEO两种。

了解搜索引擎工作原理

站内SEO

站外SEO

排名算法

站长工具

案例分析

搜索引擎工作原理

爬行

抓取

预处理(索引)

排名

搜索引擎自动信息搜集功能分两种。

      1、定期搜索,即每隔一段时间,搜索引擎主动派出“蜘蛛”程序,对一定IP地址范围内的互联网站进行检索,一旦发现新的网站,它会自动提取网站的信息和网址加入自己的数据库。

      2、提交网站搜索,即网站拥有者主动向搜索引擎提交网址,它在一定时间内(2天到数月不等)定向向你的网站派出“蜘蛛”程序,扫描你的网站并将有关信息存入数据库,以备用户查询。

步:爬行

    搜索引擎是通过一种特定规律的软件跟踪网页的链接,从一个链接爬到另外一个链接,像蜘蛛在蜘蛛网上爬行一样,所以被称为“蜘蛛”也被称为“机器人”。搜索引擎蜘蛛的爬行是被输入了一定的规则的,它需要遵从一些命令或文件的内容。

第二步:抓取

  搜索引擎是通过蜘蛛跟踪链接爬行到网页,并将爬行的数据存入原始页面数据库。其中的页面数据与用户浏览器得到的HTML是完全一样的。搜索引擎蜘蛛在抓取页面时,也做一定的重复内容检测,一旦遇到权重很低的网站上有大量抄袭、采集或者复制的内容,很可能就不再爬行

爬行方式

               广度优先                                          深度优先

 1.png                                    2.png

 

 

影响蜘蛛爬行的因素

网站、页面权重高。

网站更新度:蜘蛛每次爬行都会把页面数据储存起来,第二次来的时候发现页面没有变化,就不再抓取。如果页面经常更新,蜘蛛来的也频繁。

导入链接

与首页的点击距离。

是否导出链接过多

是否有网站地图

是否设置404页面

第三步:预处理(索引)

 

 3.png

 搜索引擎将蜘蛛抓取回来的页面,进行各种步骤的预处理。

      1.提取文字(去除格式代码,留文字部分)

      2.中文分词

      基于词典匹配,词典匹配相对降低,准确性取决于词典的完整性与更新度

      基于统计,分析大量的文字样本,统计出字与字相邻出现的概率,几个相邻出现次数越多越可能形成一个词

      两种各有优缺点,一般混合使用

      3.去停止词

      停止词就是那些页面中出现频率很高,却对内容没有任何影响的词,如“的”、“地”、“得”之类的助词,“啊”、“哈”、“呀”之类的感叹词,“从而”、“以”、“却”之类的副词或介词。这些词被称为停止词,因为它们对页面的主要意思没什么影响。搜索引擎在索引页面之前会去掉这些停止词,使索引数据主题更为突出,减少无谓的计算量。

      4.消除噪声

      绝大部分页面上的一部分内容对页面主题也没什么贡献,比如版权声明文字、导航条、广告等。所以搜索引擎在预处理的过程会把这些无关内容进行消噪处理。

      5.去重

      同一篇文章重复出现在不同的网站或同网站不同的网址上,搜索引擎不喜欢重复性的内容。

      索引前进行识别和删除重复内容;去重方法:选取一部分特征关键词(一般是出现频率高的词),十个左右,计算这些词的数字指纹(MD5算法);特征关键词有任何微小的变化,计算出来的数字指纹都有很大的差距。   

      6.正向索引

      经过以上步骤之后,搜索引擎得到的就是独特的、能反映页面主体内容的、以词为单位的内容。接下来搜索引擎索引过程就是可以提取关键词,按照分词程序划分好的词,把页面转换为一个关键词组成的集合,同时记录每一个关键词在页面上的出现频率、出现次数、格式、位置。这样,每一个页面都可以记录为一串关键词集合,其中每个关键词的词频、格式、位置等权重信息也都会记录在案了。


文件ID

内容

文件1

关键词1,关键词2,关键词7,关键词10,…… 关键词L

文件2

关键词1,关键词7,关键词30, ……,关键词M

文件3

关键词2,关键词70,关键词305,……,关键词N

……


文件6

关键词2,关键词7,关键词10,……,关键词X

……


文件x

关键词7,关键词50,关键词90,关键词Y

 

      7.倒排索引

      正向索引还不能直接用于排名,因为在搜索某个关键词的时候,排名程序需要扫描所有索引库中的文件,计算相关性,这样的计算量无法满足实时返回排名结果的要求,所以搜索引擎会将正向索引数据库重新构造为倒排索引,把文件对应到关键词的映射转换为关键词到文件的映射,在倒排索引中关键词是主键,每个关键词对应着一系列文件,这些文件中都出现了这个关键词。这样当用户搜索某个关键词是,排序程序在倒排索引中定位到这个关键词,就可以马上找出所有包含这个关键词的文件。

 

关键词

文件

关键词1

文件1,文件2,文件7,文件58,……,文件

关键词2

文件l,文件7,文件30,……,文件M

关键词3

文件2,文件70,文件305,……,文件n

……

……

关键词:

鼎极seo是主要从事企业网站建设与网络推广服务以及移动互联网客户端,相关产品开发;
业务范围包括:企业网站策划、网页设计、网站建设、手机/微信站、APP、网络推广、企业邮箱、域名主机,及其它互联网相关产品服务。

联系我们
江苏省徐州市

代码优化

1、HTML源代码分析教程

1、<!--页面注解-->
  2、<html>
  3、<head>

  4、<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
  5、<meta http-equiv=“Content-Language” content=zh-cn>
  6、<title>页面标题</title>

  7、<meta name="keywords" content="关键词">
  8、<meta name="description" content="网站描述">
  9、<link href="inc/css.css" type="text/css" rel="stylesheet">


  10、</head>
  11、<body>

  12、<div>
  13、<h1>页面内容标题</h1>
  14、<h2>页面相关性标题</h2>
  15、<h3>标题系列</h3>
  16、<h4>标题系列</h4>
  17、<h5>标题系列</h5>
  18、<h6>标题系列</h6>


  19、<img src="xxx.jpg" alt="图片说明">
  20、<a href="/" title="链接说明">锚文本</a>
  21、<strong>重点关键词强调</strong>
  22、<b>关键词强调</b><u>关键词强调</u><i>关键词强调</i>
  23、</div>


  25、<div>
  26、版权部分关键词强调
  27、</div>


  28、</body>
  29、</html>

 ********************************************************

  注:<body>..</body>标签区中的罗列,都是一些基础的HTML标签,这些标签出现的次序是可以变化的。

 1行的<!--页面注解-->

  这个标签是用来做HTML代码注解的,这种形式的注解在浏览器中是不会显示的,而搜索引擎可以读到。所以这个标签有的时候会成为作弊的一种形式,而这种原始的作弊方式、早被搜索引擎

 4行到第5行<!--meta标签--> 

  对于Meta标签来说他包含了很多参考、其中需了解“Content-Type”代表页面编码、“Content-Language”代表页面语言,这是一个很容易被SEO初学者忽悠的标签、一旦设置错误、可能影响搜索引擎对页面的抓取及收录。

 6行<title>页面标题</title>  重点了解

  页面标题对搜索引擎排名的优化是非常大的、而在SEO优化过程中、也是重点优化对像之一、尤其是百度对页面标题的评分很高、而标题的书写也直观重要、包括:标题是否完全匹配、是否包含与被包含关键词等

 7行<meta name="keywords" content="关键词">

  关键词标签对于现在的搜索引擎或SEO优化者来说价值越来越低了、以前搜索引擎对关键词标签是很看重了、由于黑帽的手法慢慢体现、一些SEO人员以堆积关键词标签来提升网站排名为目的,导致现在搜索引擎对关键词标签、可以说是忽悠判断,但是个人认为、虽然是被忽悠、但是首页的关键词还是可以手工处理下、至于内页可以忽悠。

 8行<meta name="description" content="网站描述">

  主要在搜索引擎结果中体现,与关键词标签一样、目前不太受搜索引擎看中、但描述标签与关键词标签是有区别的、关键词标签浏览器用户正面是无法看到,但是描述标签一旦被搜索引擎索引、是会体现在搜索引擎结果中、而这个结果是可以直接响影用户点击率、可以说一个好的描述可以为你网站增加很多点击及转化、提示:由于搜索引擎时刻在更新、算法及索引方法也不段在进步、或者说很人性化、所以搜索引擎会根据用户搜索“关键词”去抓取网站描述。所以个人建议、还需要注意首页描述及着陆页描述的书写、其它部分可以使用程序调用、

 13行<h1>页面内容标题</h1>

  H1标题、一个代码优化中重点标签,也是搜索引擎定位这个页面主题的依据,如果你的<h1>标签里没有出现你的页面关键字,那么这是一种很大的损失,这里的权重相对于其它的在<body>区的标签来说更加重要。在代码优化中、它的重要性仅次于<title>。所以,必需认真对待你的页面<h1>标签的优化,一般使用在文章页面来的文章标题优化。(H1+TITLE 可以说是SEO优化中的致命组合)


 14行到第18行<h2>页面相关性标题</h2>

  对比<h1>标签来说、H2标签重要程度相对来说就降底了,一般使用在长尾关键词及相关内容方面,而<h3>~<h6>这些标签,重要性是依次递减的,在一个页面的权重越来越低。

 19行<img src="xxx.jpg" alt="图片说明">

        我们知道搜索引擎是不可以抓取图片内容的、那么如何合理的告诉搜索引擎某张图片代表什么了,ALT标签就是告诉搜索引擎图片含义、让搜索引擎的理解图片内容。


 20行<a href="/" title="链接说明">锚文本</a>

        锚文本、我们称为关键词链接,关键词链接在SEO优化当中是一个非常重要优化对象之一,而锚文本链接又可以扩展,外部链接形式的锚文本及内部链接形式的锚文本。具体对SEO的作用是需要判断链接的形式不同而不同。

 21行<strong>重点关键词强调</strong>

        <strong>标签基实重要性仅次于<h1>,也是强调一类、包括:<b>、<u>、<i>等标签。而对于搜索引擎来说<strong>标签的影响要高说<b>、<u>、<i>等

 26行版权部分优化

        随着搜索引擎越来越强大、网页底部、版权部分也是SEO优化者需要优化的地方、一般来说底部文件对于程序来说都是全部调用、所以如果能在底部加上一个关键词链接指向网站首页、那么这种内部式全部投票也是一种对首页页面权重的提高。

  网站代码优化目的

  1、去掉网站多余的代码,以减少网站的大小,提高网站的加载速度和用户体验。

  2、网站代码优化是站长必须要掌握的基本技能,这关系到搜索引擎蜘蛛是否会对你的网站感兴趣,冗长无用的代码会让蜘蛛很难理解,增加蜘蛛抓取网站的难度。

3、同时,网页的精简还关系到网站的加载速度,对用户体验至关重要。

  网页代码优化的原因:

  (1) 可以减少网页的体积,加快网页的下载速度;

  (2) 提高蜘蛛对信息的抓取的速度和准确性

  (3) 有利于减少错误的代码,提高页面的对蜘蛛的友好性

  (4) 便于管理人员维护,提高工作效率

  (5) 减少网页的噪音,突出页面的主题

  我们可以从以下几个方面来进行精简代码:

  一、清除页面中多余的代码:空格代码、stylefont重复定义的代码

  有的网站以为制作者的代码书写习惯问题,页面会有很多空格代码。不要小看这些体积很小的代码,积攒多了,也会使我们的网站异常的臃肿。

  很多网站都是采用的DIV+CSS,在CSS中定义了文字的字体,颜色,以及页面的排版,但是在网站的其他地方还用了以style以及font来再次定义字体字体,这些代码完全没有必要重复定义,属于可以精简的代码。

  二:使用DIV+CSS布局网页

  虽然现在div+css已经很成熟了,但是很多网页设计者可能考虑到网页的兼容性以及布局的简易性还是使用老式的table布局,如上图所示。虽然table布局很方便,但是其弊端也是显而易见的,那就是会大大增加网页的大小,尤其是多层表格的嵌套。这种布局不仅会提升体积,同时如果嵌套数太多的话就会影响到搜索引擎的爬行,影响到站点的收录。

  另外,一些网站会使用外部文件,将cssjs放在外部文件中,页面html中只要放一样代码调用就可以了。有时候我们去查看的一些源文件代码,会看到很多css代码以及javasript代码,将javascript放置在网站页面的html文件中的前面,而真正能用到得一些文字部分这被推倒了html的后面。企赢001认为一般页面代码中的这种代码都需要精简。

  三、代码注释

  很多程序人员在编写代码是都习惯在别人看不懂的地方给出一段注释,这些代码往往是为了几个程序员之间的协同工作,对于外人以及搜索引擎来说没有任何用处,相反还会给搜索引擎蜘蛛带来一定的困扰。

  四、 减少页面表格。

  现在的网站用什么做?很多程序员想法就是采用CSS去做,采用CSS去排版,这种做法呢,就使页面中的表格大大的降低了,但是网站也不能没有表格,有些事必须使用到得,使用表格本身没什么,但是有很多网站都采用嵌套表格,一般这样的表格形式会给网站产生大量的垃圾代码,并且这些垃圾代码都是没有任何用处的代码,这一类代码也是我们网站需要精简的代码之一。

五、降低页面对于JS的依赖性

  现在来说,JS对于搜索引擎并不不友好,虽然有消息称搜索引擎不会对JS有厌恶的情绪,但是多一事不如少一事。虽然JS可以制作出很多的效果,但是网页中大量的JS将影响蜘蛛对页面的抓取和增加网页体积。尤其是页面的关键位置如导航栏,尽量采用DIV+CSS的设计方法。

  六、尽量不要使用内嵌式CSS

  内嵌式CSS分为两种,一是在head区域的普通内嵌式,二是在标签内出现的行内内嵌式css,无论是何种内嵌CSS方式结果都会提升页面的体积。对此我们可以尽量使用外调式的CSS来为站点页面的体积瘦身。

  七、将html控制方式转换为CSS控制

  很多网页设计者习惯在标签内对内容进行控制。比如img标签里通过widthheight来控制图片的大小。尽量将这些代码转换成外调式的CSS,使网页代码更加的瘦身。

  八:对网页进行GZIP压缩

  这一点可能大家都很熟悉。这个功能需要你的服务器的支持。GZIP压缩一般能对网页进行30%-80%的压缩,是重要的一种优化效果。

 

标签优化 

 ()、常用标签

  包括htmlbodyheadfootpbiemstrongfontdiv/brspanimagetitlekeywordsdescriptiontaganofollowcanonicalh

  ()、标签的一般写法: (特殊标签除外,比如</br>)

  (