博客SEO-搜索引擎工作原理简介
资源推荐
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-搜索引擎工作原理简介的更多相关文章
- WEB前端-搜索引擎工作原理与SEO优化
一.搜索引擎工作原理 搜索引擎的工作分为三个阶段,即爬行,索引和检索 1.爬行 搜索引擎具有网络爬虫或蜘蛛来执行爬网,每次抓取工具访问网页时,它都会复制该网页并将其网址添加到索引中. 在“蜘蛛”抓取 ...
- Nginx 反向代理工作原理简介与配置详解
Nginx反向代理工作原理简介与配置详解 by:授客 QQ:1033553122 测试环境 CentOS 6.5-x86_64 nginx-1.10.0 下载地址:http://nginx. ...
- django工作原理简介
django工作原理简介 先简单的介绍一下django的工作原理,其中还会涉及到Middleware(中间件,包括request, view, exception, response),URLConf ...
- WordPress博客系统搜索引擎优化seo全攻略方法
WordPress的文章.评论等很多数据都是存放在数据库的,所以搭建wordpress网站的时间,网站的空间不需要多大,而数据库一定要充足,而在WordPress数据库中主要使用 wp_posts 表 ...
- 团队博客作业Week1 --- 团队成员简介
团队博客作业Week1 团队作业1 我们团队是一个以功能团队模式组建而成的团队,我们总共有5位队员,分别是:李剑锋.陈谋.卢惠明.潘成鼎.仉伯龙. 中间的那位就是李剑锋,我们的PM(项目经理).性格热 ...
- Windows下ARP协议的工作原理简介
ARP协议(Address Resolve Protocol,地址解析协议)工作在TCP/IP协议的第二层-数据链路层,用于将IP地址转换为网络接口的硬件地址(媒体访问控制地址,即MAC地址). ...
- 博客恢复更新 工作环境转移到Linux
嗯, 回来了. 工作了, 以后学习和写博的时间只能靠挤了, 相信挤一挤总会有的.最近的一些计划: 重拾基础 玩好linux wid, 2014-04-27
- kafka工作原理简介
消息队列 消息队列技术是分布式应用间交换信息的一种技术.消息队列可驻留在内存或磁盘上, 队列存储消息直到它们被应用程序读走.通过消息队列,应用程序可独立地执行--它们不需要知道彼此的位置.或在继续执行 ...
- Java虚拟机工作原理简介
1. Java 文件执行过程 2. 运行数据区域 Runtime Data Areas:当运行一个JVM示例时,系统将分配给它一块内存区域(这块内存区域的大小可以设置的),这一内存区域由JVM自己来管 ...
随机推荐
- javascript基础学习(三)
javascript之运算符 学习要点: 表达式 运算符:一元运算符,算术运算符,关系运算符,逻辑运算符,*位运算符,赋值运算符 一.表达式 表达式有常量表达式,变量表达式,复合表达式. 二.算术运算 ...
- js判断是否在iframe中
1.方式一 if (self.frameElement && self.frameElement.tagName == "IFRAME") { alert('在if ...
- DX笔记之一---Direct3D基础
一.预备知识 1.表面 表面就是Direct3D用于储存2D图像数据的一个像素矩阵.width和height以像素为单位,pitch以字节单位,用接口IDirect3DSurface来描述表面 Loc ...
- 【POJ1417】【带标记并查集+DP】True Liars
Description After having drifted about in a small boat for a couple of days, Akira Crusoe Maeda was ...
- SVN版本控制图标不显示的解决方法~
新系统每次装了svn之后,过了一段时间,安装的软件一多就会出现这个问题,哎,收录一下解决方案! 输入:win+R,输入regedit,调出注册表信息,按下Ctrl+F,在注册表里搜索"She ...
- git config找到下载的路径URL
有时想在别的机器上下载自己的上传的源代码,发现git不像svn那么方便一眼就能看到下载地址,这两天在网上查了一下,终于找到方法了. 一般本地的github目录下总会有一个.git目录,点击进入,可 ...
- centos 安装vnc服务
1.安装tigervnc-server yum install tigervnc-server 2.启动vnc服务 vncserver:1 [错误提示待解决bad display name " ...
- asp.net gridview中增加单击单元格事件
实现功能:单击表格中某个单元格(不是第一列.最后一列.最后一行,不为0)根据行第一个单元格内容及列名来查询详细内容,在消息框中查看显示. 在代码中增加 protected override void ...
- PHP获取每月第一天与最后一天
<?phpfunction getthemonth($date){$firstday = date('Y-m-01', strtotime($date));$lastday = date('Y- ...
- Bootstrap 和 LESS
Bootstrap 简介 什么是 Bootstrap? Bootstrap 是一个用于快速开发 Web 应用程序和网站的前端框架.Bootstrap 是基于 HTML.CSS.JAVASCRIPT 的 ...