《SEO实战密码》笔记①-了解搜索引擎

一、了解搜索引擎

1.1 术语汇总

PPC:搜索引擎的竞价搜索广告

1.2 搜索结果显示格式

1.2.1 全站链接

样式如下:
《SEO实战密码》笔记①-了解搜索引擎

《SEO实战密码》笔记①-了解搜索引擎

1.2.2 框计算

输入关键词直接显示结果,比如:数值计算、天气、日历、双色球、单位换算等

《SEO实战密码》笔记①-了解搜索引擎

1.2.3 富摘要

《SEO实战密码》笔记①-了解搜索引擎

在富摘要中显示合适信息,可增强用户点击欲望,比如产品价格、好评数、评分等级等

1.2.4 图文展现

1.3 搜索引擎工作原理

1.3.1 爬行和抓取

这是完成数据收集的第一步。蜘蛛(spider)或机器人(bot)访问任何网站时,先访问网站根目录的robots.txt文件。若robots.txt禁止蜘蛛抓取某些文件或目录,蜘蛛则会遵守协议。

蜘蛛也有标明自己身份的用户代理名称,方便站长在日志中查看识别。

eg.

  • 360spider 360蜘蛛
  • baiduspider+ 百度蜘蛛
  • sogou+web+robot 搜狗蜘蛛
  • bingbot 必应蜘蛛
  • Googlebot 谷歌蜘蛛

1.3.2 跟踪链接

蜘蛛跟踪抓取全部链接的策略有2种:
(1)深度优先
蜘蛛沿着发现的链接一直向前爬行,直到前面再也没有其他链接,再返回第一个页面,沿着另一个链接继续向前爬行

(2)广度优先
蜘蛛在一个页面上发现多个链接时,把页面上所有第一层链接都爬遍,再沿着第一层的链接爬遍第二层

《SEO实战密码》笔记①-了解搜索引擎

1.3.3 吸引蜘蛛

蜘蛛理论上可以抓取全部页面,但实际并不会这么做,只会抓取其认为重要的页面。

(1)网站和页面权重
质量高、资格老的网站被认为权重高

(2)页面更新度
若蜘蛛第二次抓取发现与第一次抓取的没有变化,则会认为页面没有更新;多次抓取都发现没有更新,就会认为没必要经常来这网站抓取。

(3)导入链接
外部链接或同一网站的链接均可,要高质量

(4)与首页点击距离
蜘蛛访问首页最频繁,离首页越近(层级越小),权重越高

(5)URL结构
蜘蛛在抓取页面前要预判页面的权重,短的、浅层次的url也会被认为在该网站的权重较高

1.3.3 地址库

为了避免重复爬行抓取网址,蜘蛛会建立一个网址库。

地址库的url来源
(1)人工录入种子网站
建好一个新站后,向百度、Google或360提交的网址收录。

(2)蜘蛛抓取页面
蜘蛛在解析html时发现新的url,就将新url存入待访问数据库。

(3)站长提交网站
提交网站只是把网站存入待访问数据库,如果网站持久不更新蜘蛛也不会光顾,搜索引擎收录的页面都是蜘蛛自己追踪链接得到的。

1.3.4 预处理

“预处理”也被简称为索引,因为索引是预处理最重要的步骤。蜘蛛检测并删除复制内容通常也在此阶段完成。

1.3.4.1 提取文字

搜索引擎预处理首先要做的就是从HTML文件中去除标签、程序,提取出可以用于排名处理的网页面文字内容。

除了可见文字,搜索引擎也会提取出一些特殊的包含文字信息的代码,如Meta标签中的文字、图片替代文字、Flash文件的替代文字、链接锚文字等。

1.3.4.2 中文分词

英文等语言单词与单词之间有空格分隔,可以直接把句子划分为单词的集合,但中文不行。

分词方法有2种:
(1)基于词典匹配
将待分析的一段汉字与一个事先造好的词典中的词条进行匹配,在待分析汉字串中扫描到词典中已有的词条则匹配成功,或者说切分出一个单词。

(2)基于统计
分析大量文字样本,计算出字与字相邻出现的统计概率,几个字相邻出现越多,就越可能形成一个单词。

优点:对新出现的词反应更快速,也有利于消除歧义。

实际上,2种分词方法是混合使用各取所长。快照只能大致帮助判断分词情况,分词效果由词库规模和算法决定。

1.3.4.3 去停止词

中文或英文都会有一些出现频率高的感叹词、副词或介词,比如“地”、“的”、the、to、of等,其对页面的主要意思没影响,要将其去掉。

1.3.4.4 消除噪声

“噪声”:对页面主题没有任何贡献,比如版权声明、导航条、广告等内容。

消噪的基本方法:根据HTML标签对页面分块,区分出页头、导航、正文、页脚、广告等,在网站上大量重复出现的区块往往属于噪声。

1.3.4.5 去重

同一篇文章常会出现在不同网站、同一网站的不同网址上,搜索有引擎要识别并删除重复的。

去重基本方法——对页面特征关键词计算指纹:
从页面主体内容中选取最有代表性的一部分关键词(多是出现频率最高的关键词),然后计算这些关键词的数字指纹。

此处的关键词是在分词、去停止词、消噪之后选取的。通常选10个特征关键词就能有较高的准确性。

典型的算法有MD5算法。

1.3.4.6 正向索引

经过上述处理后,可以提取关键词,按照分词程序划分好的词,把页面转换为一个关键词组成的集合,同时记录每一个关键词在页面上的出现频率、出现次数、格式(如出现在标题标签、黑体、H标签、锚文字等)、位置 (如页面第一段文字等)

1.3.4.7 倒排索引

正向索引还不能直接用于排名。搜索引擎会将正向索引数据库重新构造为倒排索引,把文件对应到关键词的映射转换为关键词到文件的映射。

1.3.4.8 链接关系计算

搜索引擎在抓取页面内容后,必须事前计算出:页面上有哪些链接指向哪些其他页面,每个页面有哪些导入链接,链接使用了什么锚文字,这些复杂的链接指向关系形成了网站和页面的链接权重。

1.3.4.9 特殊文件处理

搜索引擎通常还能抓取和索引以文字为基础的多种文件类型,如PDF、Word、WPS、XLS、PPT、TXT文件等。

1.3.5 排名

1.3.5.1 搜索词处理

搜索引擎接收到用户输入的搜索词后,需要对搜索词以下处理,才能进入排名过程。

  • 中文分词
  • 去停止词
  • 处理与、或、包含、不包含等高级搜索指令
  • 拼写错误矫正
  • 整合搜索触发

比如明星姓名经常触发图片和视频内容,当前热门话题容易触发资讯内容

1.3.5.2 文件匹配

找出含有所有关键词的文件,倒排索引能够使文件匹配能够快速完成。

1.3.5.3 选择初始子集

找到包含所有关键词的匹配文件后,还不能进行相关性计算,因为找到的文件经常会有几十万几百万,甚至上千万个。

绝大部分用户只会查看前2页,也就是前20个结果。搜索结果页面最多显示100页共计1000个结果,所以搜索引擎只需要计算前1000个结果的相关性,就能满足要求。

1.3.5.4 计算相关性

选出初始子集后,对子集中的页面计算关键词的相关性。

  • 关键词常用程度
  • 词频及密度
  • 关键词位置及形式。如标题标签、黑体、H1等位置的,说明页面与关键词越相关。
  • 关键词距离。

比如搜“减肥方法”,页面上连续完整出现“减肥方法”四个字是最相关的。若“减肥”和“方法”没连续匹配出现,但出现的距离近一些,也被认为相关性稍大。

  • 链接分析及页面权重

1.3.5.5 排名过滤调整

对已基本确定的排名,加入惩罚机制微调排名

1.3.5.6 排名显示

1.3.5.7 搜索缓存

如果每次搜索都重新处理排名会很低效,就把最常见的搜索词存入缓存,用户搜索时直接从缓存中调用。

1.3.5.8 记录用户查询与点击日志

1.3.6 链接原理

在排名中计入链接因素,不仅有助于减少垃圾内容,提高结果相关性,也使传统关键词匹配无法排名的文件能够被处理。比如图片、视频文件无法进行关键词匹配,但是却可能有外部链接,通过链接信息,搜索引擎就可以了解图片和视频的内容从而排名。

1.3.7 HITS算法

HITS算法会提炼出两种重要页面——枢纽页面、权威页面。

枢纽页面:本身可能没有多少导入链接,但是有很多导出链接指向权威页面。如Hao123上网导航

权威页面:本身可能导出链接不多,但是有很多来自枢纽页面的导入链接。通常是提供真正相关内容的页面。

争取成为权威页面,若不能成为权威页面时,就让它成为枢纽页面。因此绝不链接到其他网站的做法,并不是好的SEO方法。

1.3.8 TrustRank信任指数算法

TrustRank算法的基本假设:好的网站很少会链接到差网站,但差网站会链接到高权威、高信任指数的网站,试图提高自己的信任指数。

TrustRank算法适用于页面、域名。

TrustRank值计算方式
选出第一层很值得信任的网站,信任指数最高;第一层网站链接到的第二层网站,信任指数下降;第二层链接到的第三层信任指数更低一些…信任指数随点击距离(层数级别)逐层递减。

1.3.9 Google PR

PR=PageRank,发明者是Google创始人拉里佩奇,即反向链接越多的页面就是越重要的页面,PR值越高。

类似于论文文献的引用,若论文A的被引用次数越多,则A越是优质论文。

PR值越高的意义:
1)网站收录深度越广和总页面数越多
2)搜索引擎蜘蛛访问得就越频繁,更新更快
3)当Google在不同网站上发现完全相同的内容时,会选出一个作为原创,其他作为转载或抄袭。PR值越高,越容易被认为是原创。
4)影响排名初始子集的选择

1.3.10 Hilltop算法

传统PR值与特定关键词或主题没有关联,只计算链接关系。Hilltop算法同样是计算链接关系,不过它更关注来自主题相关页面的链接权重。起到与PR值互补的作用。

Hilltop算法把这种与主题相关页面称为专家文件。

启示
建设外部链接时更应该关注主题相关的网站,搜索某个关键词排在前面的页面就是最好的链接来源,甚至可能一个来自竞争对手网站的链接效果是最好的。

1.4 高级搜索指令

1.4.1 双引号

把搜索词放在双引号中,代表完全匹配搜索,即:搜索结果返回的页面包含双引号中出现的所有词,连顺序也必须完全匹配。

1.4.2 减号

代表搜索不包含减号后面的词的页面。使用这个指令时,减号前面必须是空格,减号后面没有空格,紧跟着需要排除的词。

1.4.3 星号

星号是最常用的通配符,表示任意字符。但百度不支持该指令。

1.4.4 inurl

用于搜索査询词出现在URL中的页面。

关键词出现在URL中对排名有一定影响,因此,使用inurl可以更准确地找到竞争对手。

1.4.5 inanchor

inanchor: 指令返回的结果是导入链接锚文字中包含搜索词的页面。百度不支持inanchor。

在Google搜索 inanchor:点击这里
返回的结果页面本身并不一定包含“点击这里”这四个字,而是指向这些页面的链接锚文字中出现了“点击这里”这四个字。

该指令可找到某个关键词的竞争对手,而且这些竞争对手往往是做过SEO的。研究竞争对手页面有哪些外部链接,就可以找到很多链接资源。

1.4.6 intitle

intitle:指令返回的是页面title中包含关键词的页面。

1.4.7 allintitle和allinurl

allintitle:搜索返回的是页面标题中包含多组关键词的文件。

例如,「allintitle:SEO 搜索引擎优化」就相当于「intitle:SEO intitle:搜索引擎优化」
得到的是标题中既包含“SEO”、也包含“搜索引擎优化”的页面。

allinurl同理:
「allinurl:SEO 搜索引擎优化」 = 「inurl:SEO inurl:搜索引擎优化」

1.4.8 filetype

用于搜索特定的文件格式,如「filetype:pdf SEO」

1.4.9 site

用来搜索某个域名下的所有文件

1.4.10 link和linkdomain

link指令用来搜索某个url的反向链接,既包括内部链接,也包括外部链接。百度不支持link指令。

linkdomain指令只适用于雅虎,返回的是某个域名的反向链接。雅虎的反向链接数据还比较准确,是SEO人员研究对手外部链接情况的重要工具之一。

1.4.11 related

related:指令只适用于Google,返回的结果是与某个网站有关联的页面。