您的位置:首页 > 其它

需要懂一点点的SEO和搜索排名(笔记)

2013-11-01 22:13 211 查看
SEO:就是在保证用户体验的基础上,尽量迎合搜索引擎,与研究用户界面及可用性不同,SEO既要从用户出发,也要站在搜索引擎的角度考虑问题,才能清晰地知道怎样优化网站。

SEO人员优化网站就是尽量减少搜索引擎的工作量,降低搜索引擎的工作难度,使搜索引擎能更轻松,快速的收录网站页面,更准确地提取页面内容。

搜索引擎的蜘蛛

吸引蜘蛛的因素:

网站和页面权重,质量高,资格老的网站被认为权重比较高,这种网站上的页面被爬行的深度也会比较高。页面的更新度。蜘蛛每次爬行都会把页面数据存储起来。如果第二次爬行发现页面与第一次收录的完全一样,说明页面没有更新,蜘蛛也就没有必要经常抓取。如果页面内容经常更新,蜘蛛就会更加频繁的访问这种页面,页面上出现的新链接,也自然会被蜘蛛更快地跟踪,抓取新页面。导入链接。无论是外部链接还是同一个网站的内部链接,要被蜘蛛抓取,就必须有导入链接进入页面,否则蜘蛛根本没有机会知道页面的存在。高质量的高如链接也经常使页面上的导出链接被爬行深度增加。与首页点击距离。一般来说网站上权重最高的是首页,大部分外部链接是指向首页的,蜘蛛访问最频繁的也是首页。离首页单机距离越近,页面权重越高,被蜘蛛爬行的机会越大。

蜘蛛的预处理:

1.提取文字:现在的搜索引擎还是以文字内容为基础。蜘蛛抓取到的页面中的HTML代码,除了用户在浏览器上可见的文字外,还包含了大量的html格式标签,javascript程序等无法用于排名的内容。搜索引擎的预处理首先要做的是,从html文件中去除标签,程序,提取出可以用于排名处理的网页文字内容。

//猜测:表现分离的原因,也许有这个吧,搜索引擎可能会把提取文字效率高的页面,设置相对较高的优先级。javascript要与html分离的原因之一吧。

2.中文分词:分词是中文搜索引擎特有的步骤。搜索和处理页面及用户搜索都是以词为基础的。英文等语言单词与单词之间有空格分隔,搜索引擎索引程序可以直接把句子划分为单词的集合。中文分词就没有。

中文分词方法基本上可以分为两种:基于词典的匹配和基于统计的匹配。

基于词典的匹配的方法是指:将待分析的一段汉字,与一个事先造好的词典中的词条进行匹配,在待分析汉字串中扫描到词典中已有的词条则匹配成功。按照扫描方向分为:正向匹配和逆向匹配。按照匹配长度分为:最大匹配和最小匹配。也可以混合使用,最大逆向匹配等。

词典匹配方法计算简单,其准确度在很大程度中,取决于词典的完整性和更新情况。

基于统计的分词方法:分析大量文字样本,计算出字与字之间相邻出现的统计概率,几个字相邻出现越多,就越能形成一个单词。基于统计的分词的优势是对新出现的词反应更快速,也有利于消除歧义。

基于词典匹配和基于统计匹配的分词方法各有优劣,实际使用中的分词系统都是混合使用的。快速高效,又能识别生词,新词,消除歧义。

中文分词的准确性往往影响搜索排名的相关性。

百度分词会把最长匹配的优先级提高,google更倾向于最短匹配。所以在页面的关键字部分,要考虑是主打国内,支持百度,还是?

同时,搜索引擎和会关注语义化的标签,如h1等,所以更多利益语义化的标签进行布局,会有更好的搜索排名。

3.去停止词:

无论是英文还是中文,页面内容都会有一些出现频率很高的字,却对内容没有任何影响的词,如“的”、得,地之内的助词,啊,哈,呀之类的叹词,从而,以,却之类的副词或介词,这些词被称为停止词,英文中的,the,a,an ,to,of等。搜索引擎在索引页面之前会去掉这些停止词,使索引数据主体更为突出,减少无所谓的计算。

4.消除噪声:

绝大数页面,还有一部分内容对页面主题没有什么贡献,比如版权声明文字,导航条,广告等。这些不影响主题的区块,都属于噪声,对页面主题只能起到分散作用。搜索引擎需要识别并消除这些噪声,排名时不适用噪声内容。消除的基本方法是根据html标签对页面分块,区分出页头,导航,正文,页脚,广告等区域,在网站上大量重复出现的区块往往属于噪声,对页面进行消噪后,剩下的内容才是主题内容。

5.去重:

搜索引擎还需要对页面进行去重。同一篇文章经常重复出现在不同网站及一个网站的不同网址上,搜索引擎不喜欢这种重复的内容。用户也不喜欢这样的文章,这个时候搜索引擎就会返回相同文章的一篇,所以在进行索引前还需要识别和删除重复的内容,这个过程就是去重。

去重的基本方法是:对页面特征关键词计算指纹,也就是说,从页面主体内容中选取最具有代表性的一部分关键字(经常是出现频率最高的关键字),然后计算这些关键词的数字指纹。这里的关键词是在分词,去停止词,消噪之后。实验表明,通常选取10个特征关键词就可以达到比较高的准确率。

6.正向索引:也称为索引。经过文字提取,分词,消噪,去重后,搜索引擎得到的就是独特的,能反映页面主体内容的,以词为单位的内容。接下来搜索引擎索引程序就可以提取出关键词,按照分词程序划分好的词,把页面转换成一个关键词组成的集合,同时记录每一个关键词在页面上出现的频率,出现次数,格式(如出现在标题标签,黑体,H标签,锚标签等),位置(如页面第一段文字等)。这样,每一个页面都可以记录为一串关键词集合,其中每个关键词的词频,格式,位置等权重信息都记录在案。

每个文件都对应一个文件id,文件内容被表示为一串关键词的集合。实际上在搜索引擎的索引库中,关键词也已经转换为关键词id,这样的数据结构就称为正向索引。

7.倒排索引:

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

8.链接关系计算:

链接关系计算,也是预处理中很重要的一部分,现在所有的主流搜索引擎排名因素中都包含网页之间的链接流动信息。搜索引擎在转去页面内容后,必须事前就算出,页面上哪些链接是指向哪些其他页面,每个页面有哪些导入链接,链接使用了什么锚文字,这些复杂的链接指向关系形成了网站和页面的链接权重。

9.特殊文件处理:

除了html文件外,搜索引擎通常还能抓取和索引以文字为基础的所中文件类型,如pdf,word,wps,ppt,xls,txt等。我们在搜索结果中也经常会看到这些文件类型。

排名:经过搜索引擎蜘蛛抓取页面,索引程序计算得到倒排索引后,搜索引擎就准备好可以随时处理用户搜索了,用户在搜索框填入关键词后,排名程序调用索引库数据,计算排名显示给用户,排名过程是与用户直接互动的。

1.搜索词处理:

搜索引擎接收到用户输入的搜索词后,需要对搜索词做一些处理,才能进入排名过程。搜索词处理分为:中文分词(与要么索引时一样),去停止词,指令处理(查询词完成分词后,搜索引擎的默认处理方式是在关键词之间使用“与”逻辑,也就是说,用户在搜索“减肥方法”时,程序分词为“减肥”和“方法”两个词。另外用户输入的查询还可能包含一些高级搜索指令,如加号,减号等,搜索引擎都需要作出识别和相应的处理。),拼写错误矫正(用户如果输入了明显的字或者英文单词拼错,搜索引起会提示用户正确的数字或拼写),整合搜索触发(某些搜索词会触发整合搜索,比如明星的名字就经常会触发图片和视频内容,当前的热门话题又容易触发资讯内容,哪些词触发哪些整合搜索,也需要在搜索词处理阶段处理计算)。

2.文件匹配:

搜索词经过处理后,搜索引擎得到的是以词为基础的关键词集合,文件匹配阶段就是找出包含所有关键词的文件,在索引部分提到的倒排索引使得文件匹配能快速完成。

3.初始子集的选择:

找到包含所有关键字的匹配文件后,还不能进行相关性计算,因为找到的文件经常会有几十万,几百万或者上千万。要对这些文件实时进行相关性计算,需要的时间还是比较长的。实际上,用户并不需要知道所有匹配的文件,绝大多数用户只会查看前两页,也就是前20个结果,搜索引擎也并不需要计算这么多页面的相关性,而只要计算最重要的一部分页面就可以了,常用的搜索引擎的人都会注意到,搜索结果通常最都就显示100个,用户点击搜索结果页面底部的下一页链接最多也只能看到100页,也就是1000个搜索结果。所以搜索引擎只需要计算前1000个结果的相关性,就能满足要求。但问题在于,还没有计算相关性时,搜索引擎如果知道哪1000个文件是最相关的?所以用于最后相关性计算的初始页面子集的选择,必须依靠其他特征而不是相关性,其中最主要的就是页面的权重。由于所有匹配文件都已经具备了最基本的相关性,搜索引擎通常会用非相关性的页面特征选出一个初始子集。初始子集的数目是多少?几万或者更多。

4.相关性计算:

影响相关性计算的因素:

关键词的常用程度:经过分词后的多个关键词,对整个搜索字符串的意义贡献并不相同。越常用的词对搜索词的意义贡献越小,越不常有的词对搜索词的意义越大(通信系统量?出现概率越到,熵越小,信息量越小)(比如,搜索:“我们冥王星”,则会忽略“我们”,因为常用词的极致就是停止词)。所以搜索引擎对搜索词串中的关键词并不是一视同仁的处理,而是根据常用程度进行加权,不常有的词加权系数高,常用词的加权系数低,排名算法对不常有的词给予更多关注。

词频及密度:一般认为在没有关键词堆积的情况下,搜索词在页面中出现的次数多,密度越高,说明页面与搜索词越相关,当然这只是一个大致的规律,实际情况未必如此,所以相关性计算还有其他因素。出现频率及密度只是因素的一部分,而且重要程度越来越低。

关键词位置及形式:就像在索引部分中提出的,页面关键词出现的格式和位置都被记录在索引库中,关键词出现在比较重要的位置,比如标签,黑体,h1等,说明页面与关键词越相关。这一部分就是页面seo所要解决的。

关键词的距离:切分后的关键词完整匹配地出现,说明与搜索词最相关,比如搜索“减肥方法”时,页面上连续完整出现“减肥方法”四个字的最相关。

链接分析及页面权重:

除了页面本身的因素,页面之间的链接和权重关系也影响关键词的相关性,其中最重要的是锚文字。页面有越多以搜索词为锚文字的导入链接,说明页面的相关性越强。链接分析还包括了链接原页面的本身主题,锚文字周围的文字等。

5.排名过滤及调整:

选出匹配文件子集,计算相关性后,大体排名就已经出现了,之后搜索引擎可能还会有一些过滤算法,对排名进行轻微的调整,其中最主要的过滤就是施加惩罚。一些有作弊嫌疑的页面,虽然按正常的权重和相关性就算排到了前面,但是搜索引擎的惩罚算法去可能在最后把这些页面调到了后面去。

6.排名显示:

所有排名确定后,排名程序调用原始页面的标题标签,说明标签,快照日期等数据显示在页面上,有时搜索引擎需要动态生成页面摘要,而不是调用页面本身的说明标签。

7.搜索缓存:

用户搜索的关键词有很大一部分是重复的,按照2/8定律,20%的搜索词占到了80%的搜多次数,按照长尾理论,最常见的搜索词没有占到80%那么多,但通常也有一个比较大的头部,很少一部分搜索词占到了所有搜索次数的很大一部分。尤其是有热门新闻发生时。如果每次搜索都重新处理排名可以说是很大的浪费。搜索引擎会把最常见的搜索词存入缓存,用户搜索时,直接从缓存中调用。而不必经过文件匹配和相关性计算。大大提高了排名效率,缩短了反应时间。

8:查询及点击日志:

搜索用户的ip地址,搜索的关键字,搜索的时间,以及点击了那些结果页面,搜索引擎都记录生成日志,浙西额日志文件的数据对搜索引擎判断搜索结果质量,调整搜索算法,预期搜索趋势等有重要的意义。

稍微了解一下蜘蛛的的爬行,了解下搜索引擎的排名规则,对在开发网站中,做更好的SEO是很重要的。

尤其是在网站初始的开发过程中,就规避一些影响蜘蛛爬行,影响排名的因素,做出更优的页面。

最近准备系统的学习一下前端开发的知识,储备下~
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: