资源推荐

Zac出版的《SEO实战密码》是SEO入门的好书,可惜我在当当网买的电子书受DRM版权保护,无法与大家分享。

我在网上找到了此书的  了解搜索引擎  章节,非常详细,且容易理解。链接如下:

http://www.21jn.net/seo/zac/zac.html

前言

SEO由英文Search Engine Optimization缩写而来,中文意译为“搜索引擎优化”。SEO是指从自然搜索结果获得网站流量的技术和过程,是在了解搜索引擎自然排名机制的基础上,对网站进行内部及外部的调整优化,改进网站在搜索引擎中的关键词自然排名,获得更多流量。博客SEO的目的,就是要提升博客的访问量和人气。

要想做好SEO,就必须简单了解搜索引擎工作原理以及自然排名机制。

搜索引擎工作过程非常复杂,我这里只简单介绍搜索引擎是怎样实现网页排名的,并且我只是针对注册类博客的SEO需要了解的知识。本文章介绍的内容相对于真正的搜索引擎技术,来说只是皮毛,不过对博客的SEO已经足够用了。我尽量最容易理解的方式,并且不设计到算法和深奥的理论知识。

搜索引擎的工作过程大体上可以分成三个阶段:爬行和抓取、预处理、返回搜索结果。

爬行和抓取

搜索引擎蜘蛛通过跟踪链接访问网页,获得页面HTML代码存入数据库。

搜索引擎蜘蛛是怎样抓取网页的呢?

发现某一个链接 → 下载这一个网页 → 加入到临时库 → 提取网页中的链接 → 在下载网页 → 循环。

首先搜索引擎的蜘蛛需要去发现链接,至于怎么发现就简单了,就是通过链接发现链接。其方式有深度优先和广度优先。当然我们注册的博客基本不考虑网站目录结构的问题。通常网站结构通常分为以下三个层次:首页——频道——文章页。理想的网站结构应该是更扁平一些,从首页到内容页的层次尽量少,这样搜索引擎处理起来,会更简单。

对于博客SEO,要想让蜘蛛抓取我们的文章,就必须为文章导入链接。无论是外部链接还是同一个博客的内部链接,都可以增大蜘蛛发现网页并爬行的概率。否则蜘蛛根本没有机会知道页面的存在。

比如:我写系列博客喜欢把相关文章的连接写在博文里,虽然开始我的文章没有一篇被百度收录。一天,有一篇文章上了http协议分析工具上了博客园-原创精华区,因为其页面权重高,百度蜘蛛抓取也就越频繁。随着这一篇博文的收录,我的所有博文就都被百度收录了。

预处理

索引程序对抓取来的页面数据主要进行关键词提取、生成倒排索引、页面PageRank值计算、关键词与页面相关性、TrustRank值计算等处理,以备排名程序调用。这是搜索引擎能在极短时间内返回搜索结果的关键。其中我们最关心的是PR值和相关性。

PageRank原理

了解PageRank也就是理解为什么SEO要求一定数量高质量的外链。

PageRank可以形象的比喻成:一个页面的排名是由链接来"投票"的结果,并且是权重不等的投票,优秀的网站为你投的一票会为你的排名更靠前,垃圾网站就没啥用。因此高质量的外链是对SEO是很有帮助的。

经过页面PageRank值计算之后,网页会得到一个与页面主题(内容)无关的排名。

PageRank值决定因数:(来自维基百科)

PageRank works by counting the number and quality of links to a page to determine a rough estimate of how important the website is. The underlying assumption is that more important websites are likely to receive more links from other websites。

上面这段话的大意是:PR值是通过指向该页面链接的数量和质量来决定。

链接的质量怎么理解?

假设一个网页PR值较高(重要性高),那么出现在该网页内的连接质量就比较好。通常一些权威网站PR值较高。

这也就意味着网页之间的重要性会传递。一个链接传递的PR值决定于导入链接所在页面的PR值,发出链接的页面本身PR值越高,所能传递出去的PR也越高。

关键词与页面的相关性

了解相关键词与页面的相关性就是要理解为什么SEO要求做好文章的锚文本以及关键字优化。

影响页面与搜索关键词相关性的因素有链接分析、词频及密度、关键词位置及形式、关键词距离等因素,其中链接分析占了相当大的比重。

不得不提的是百度创始人李彦宏的超链分析专利。

建立一个链接词库,记录链接锚文字的一些相关信息,如锚文字中包含哪些关键词,发出链接的页面索引,包含特定锚文字的链接总数,包含特定关键词的链接都指向哪些页面。词库不仅包含关键词原型,也包含同一个词干的其他衍生关键词。

根据这些链接数据,尤其是锚文字,计算出基于链接的网页的相关性。在用户搜索时,将得到的基于链接的相关性与基于关键词匹配的传统相关性综合使用,得到更准确的排名。

页面有越多以搜索词为锚文字的导入链接(这句话得仔细体会),说明页面的相关性越强。链接分析还包括了链接源页面本身的主题、锚文字周围的文字等,比如一个服装类的网站有指向java语言学习页面的连接,那么这个页面和搜索关键词的相关性就低。

返回搜索结果

用户输入关键词后,排名程序调用索引库数据,匹配关键词,然后按一定格式生搜索结果页面。这是因为前面的预处理,搜索引擎能在极短时间内返回结果。

百度搜索结果显示格式

自然结果格式解析

百度自然界结果的一条记录格式如下:

第一行是页面标题,通常取自页面HTML代码中的标题标签(Title Tag)。这是结果列表中最醒目的部分,用户点击标题就可以访问对应的网页。所以页面标题标签的写法,无论对排名还是点击率都有重要意义。

第二、三行是页面说明。页面说明有的时候取自页面HTML中的说明标签(DescriptionTag),有的时候是从页面可见文字中动态抓取相关内容。所以显示什么页面说明文字是用户查询时才决定的。

第四行是百度快照和百度口碑的好评率,注意这个好评率是整个网站的好评率,而不是单个网页。

博客SEO-搜索引擎工作原理简介的更多相关文章

  1. WEB前端-搜索引擎工作原理与SEO优化

    一.搜索引擎工作原理 搜索引擎的工作分为三个阶段,即爬行,索引和检索 1.爬行  搜索引擎具有网络爬虫或蜘蛛来执行爬网,每次抓取工具访问网页时,它都会复制该网页并将其网址添加到索引中. 在“蜘蛛”抓取 ...

  2. Nginx 反向代理工作原理简介与配置详解

    Nginx反向代理工作原理简介与配置详解   by:授客  QQ:1033553122   测试环境 CentOS 6.5-x86_64 nginx-1.10.0 下载地址:http://nginx. ...

  3. django工作原理简介

    django工作原理简介 先简单的介绍一下django的工作原理,其中还会涉及到Middleware(中间件,包括request, view, exception, response),URLConf ...

  4. WordPress博客系统搜索引擎优化seo全攻略方法

    WordPress的文章.评论等很多数据都是存放在数据库的,所以搭建wordpress网站的时间,网站的空间不需要多大,而数据库一定要充足,而在WordPress数据库中主要使用 wp_posts 表 ...

  5. 团队博客作业Week1 --- 团队成员简介

    团队博客作业Week1 团队作业1 我们团队是一个以功能团队模式组建而成的团队,我们总共有5位队员,分别是:李剑锋.陈谋.卢惠明.潘成鼎.仉伯龙. 中间的那位就是李剑锋,我们的PM(项目经理).性格热 ...

  6. Windows下ARP协议的工作原理简介

       ARP协议(Address Resolve Protocol,地址解析协议)工作在TCP/IP协议的第二层-数据链路层,用于将IP地址转换为网络接口的硬件地址(媒体访问控制地址,即MAC地址). ...

  7. 博客恢复更新 工作环境转移到Linux

    嗯, 回来了. 工作了, 以后学习和写博的时间只能靠挤了, 相信挤一挤总会有的.最近的一些计划: 重拾基础 玩好linux wid, 2014-04-27

  8. kafka工作原理简介

    消息队列 消息队列技术是分布式应用间交换信息的一种技术.消息队列可驻留在内存或磁盘上, 队列存储消息直到它们被应用程序读走.通过消息队列,应用程序可独立地执行--它们不需要知道彼此的位置.或在继续执行 ...

  9. Java虚拟机工作原理简介

    1. Java 文件执行过程 2. 运行数据区域 Runtime Data Areas:当运行一个JVM示例时,系统将分配给它一块内存区域(这块内存区域的大小可以设置的),这一内存区域由JVM自己来管 ...

随机推荐

  1. imod报错:error while loading shared libraries: libjpeg.so.62的解决办法

    the file libjpeg.so.62(in /usr/lib/libjpeg.so.62)belongs to the package libjpeg62so try to reinstall ...

  2. PHP框架_Smarty

    目录 1.环境搭建 2.基本配置 3.Smarty变量调节器 4.Smarty条件判断 5.Smarty的循环 6.Smarty模板的引用 7.Smarty类与对象的赋值与引用 8.smarty函数插 ...

  3. Canvas中点到点的路径运动

    /*随机生成两个点,然后以两点为端点,进行运动,主要使用了SetInterval,对画布进行不断的擦除描绘的操作*/1 <!DOCTYPE html> <html xmlns=&qu ...

  4. 再说CSS3渐变——线性渐变

    渐变背景一直以来在Web页面中都是一种常见的视觉元素.但一直以来,Web设计师都是通过图形软件设计这些渐变效果,然后以图片形式或者背景图片的形式运用到页面中.Web页面上实现的效果,仅从页面的视觉效果 ...

  5. python路径相关

    import sys import os sys.path.append(os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) 将当 ...

  6. 那些年被我坑过的Python——不得不知(第二章)

    问题一: Python3.5.X中的数据类型有哪些? 答:包括整型.布尔型.字符串型.浮点型.复数.列表.字典.集合.元组. 细化来说: 1.整型包括短整型和长整型,不过我们不必过度操心细节,因为短整 ...

  7. sys.argv[]用法

    #-*- coding: utf-8 -*- """ sys.argv 用来获取命令行参数 sys.argv[0] 表示当前执行文件 "-k".sta ...

  8. 关于asp.net core部署到iis中出现 HTTP Error 502.5 - Process Failure的问题

    环境是windows Server2008R2 出现这个问题搞了一下午都没解决,最后又加班才算搞定,由于英文不太好,官方的文档看了好几遍,也按照文档做的,但还是出现这个问题,百度google搜了很多解 ...

  9. Vim C/C++的一键编译

    开始用Vim差不多有两个月的时间, 一开始用Makefile 编译一整个项目无压力, 但是当写到单个文件的时候, 编译就比较麻烦了, 每次都得 :w :!gcc -o 1.exe 1.c :!1 非常 ...

  10. 【Java】对Web Service的理解

    WSDL(Web Service Description Language)是描述Web Service的语言. 你会怎样向别人介绍你的Web service有什么功能,以及每个函数调用时的参数呢?你 ...