搜索引擎判定复制网页一般都基于这么一个思想:为每个网页计算出一组信息指纹(Fingerprint),若两个网页有一定数目相同的信息指纹,则以为这两个网页的内容重叠性很高,也就是说两个网页是内容复制的。8 I" p) c& R; e( S
很多搜索引擎判定内容复制的方法都不太一样,主要是以下两点的不同:2 U# c4 J0 t& N& [; R5 _4 g& m( y
1、计算信息指纹(Fingerprint)的算法; * N, H ]# J# T; C4 u' N5 n0 {
2、判定信息指纹的相似程度的参数。& R: W4 C+ {/ y6 N) H, T
在描述具体的算法前,先说清楚两点: * O2 a5 m8 ~* X5 O* v
1、什么是信息指纹?信息指纹就是把网页里面正文信息,提取一定的信息,可以是关键字、词、句子或者段落及其在网页里面的权重等,对它进行加密,如MD5加密,从而形成的一个字符串。信息指纹如同人的指纹,只要内容不相同,信息指纹就不一样。4 N* n7 f' M8 d+ H; c+ i
2、算法提取的信息不是针对整张网页,而是把网站里面共同的部分如导航条、logo、版权等信息(这些称之为网页的噪音)过滤掉后剩下的文本。7 Y; m1 C( r. i
分段签名算法
8 ]: h* Z: K- ^1 D+ O* C这种算法是按照一定的规则把网页切成N段,对每一段进行签名,形成每一段的信息指纹。假如这N个信息指纹里面有M个相同时(m是系统定义的阙值),则以为两者是复制网页。5 P" @6 M/ v/ N+ v1 z! v% s+ W4 V
这种算法对于小规模的判定复制网页是很好的一种算法,但是对于像google这样海量的搜索引擎来说,算法的复杂度相当高。3 ^5 L) l% [- g
基于关键词的复制网页算法3 |9 b3 @ o- Q
像google这类搜索引擎,他在抓取网页的时候都会记下以下网页信息:& h$ Y! s4 p- y% J
1、网页中出现的关键词(中文分词技术)以及每个关键词的权重(关键词密度); - _+ s: P6 U& y, V, |, V4 U4 L
2、提取meta descrīption或者每个网页的512个字节的有效文字。
. y- w- \" d" X1 K! c: H9 P9 W4 M! ~关于第2点,baidu和google有所不同,google是提取你的meta descrīption,假如没有查询关键字相关的512个字节,而百度是直接提取后者。这一点大家使用过的都有所体会。
* J: v& {3 F6 q' L在以下算法描述中,我们约定几个信息指纹变量:
. s& L7 k l: n6 {) u% wPi表示第i个网页; $ h* c4 j B0 \7 r) d; }8 c- w
该网页权重最高的N个关键词构成集合Ti={t1,t2,...tn},其对应的权重为Wi={w1,w2,...wi}
& n$ v- O7 s% A摘要信息用Des(Pi)表示,前n个关键词拼成的字符串用Con(Ti)表示,对这n个关键词排序后形成的字符串用Sort(Ti)表示。
M! z# }4 K g K9 x以上信息指纹都用MD5函数进行加密。6 Q3 ~2 V8 z+ O, {. s
基于关键词的复制网页算法有以下5种:
3 I! y' ^( {# ` K* T1、MD5(Des(Pi))=MD5(Des(Pj)),就是说摘要信息完全一样,i和j两个网页就以为是复制网页; 9 \1 m8 M/ I0 N
2、MD5(Con(Ti))=MD5(Con(Tj)),两个网页前n个关键词及其权重的排序一样,就以为是复制网页;
& t. ^ F, B$ S3、MD5(Sort(Ti))=MD5(Sort(Tj)),两个网页前n个关键词一样,权重可以不一样,也以为是复制网页。 . z5 [2 `+ r' @: H5 x1 w. x0 m
4、MD5(Con(Ti))=MD5(Con(Tj))并且Wi-Wj的平方除以Wi和Wj的平方之和小于某个阙值a,则以为两者是复制网页。
! |3 Y, K! M7 l& i5、MD5(Sort(Ti))=MD5(Sort(Tj))并且Wi-Wj的平方除以Wi和Wj的平方之和小于某个阙值a,则以为两者是复制网页。' e$ X4 D3 X. N6 [; j
关于第4和第5的那个阙值a,主要是由于前一个判定条件下,还是会有很多网页被误伤,搜索引擎开发根据权重的分布比例进行调节,防止误伤。这个是北大天网搜索引擎的往重算法(可以参考:《搜索引擎--原理、技术与系统》一书),以上5种算法运行的时候,算法的效果取决于N,就是关键词数目的选取。当然啦,选的数目越多,判定就会越精确,但是谁知而来的计算速度也会减慢下来。所以必须考虑一个计算速度和往重正确率的平衡。据天网试验结果,10个左右关键词最恰当。后记
/ b% R! @$ p+ ^& s ^以上肯定无法覆盖一个大型搜索引擎复制网页的所有方面,他们必定还有一些辅助的信息指纹判定,本文作为一个思路,给做搜索引擎优化的一个思路。2 h. `. @6 u3 J1 n# m) B" |
淮安无痛人流:www.0517hym.com
, ], U' J( J, w: M" o) [9 l K! N7 R4 y$ N
4 c9 Z. v) `. |& ^- S5 v |