一个防采集思路

[复制链接]
查看: 1038   回复: 0
发表于 2006-10-17 12:08:03 | 显示全部楼层 |阅读模式
前段日子接而连三发现自己站的内容给人采了,有点郁闷,于是又开始研究防采集的策略,一点想法,在这里和大家交流一下。

随便在网上搜一下“防采集”,会出来N多结果,基本上都差不多。但在实际应用中,很少可以用得上或者难以实现。总结了一下,随机码和随机模版可以防止一些采集系统,我之前的站也这么做了。但现在的采集器功能实在太强,特别是随即变量的出现使随即码完全没有了意义,对于随机模版采集者可能会花多点时间进行研究,但依然是可以采到的。

采集系统的原理基本上都是利用代码中存在[唯一的开始点]和[唯一的结束点],那么,想彻底的防止采集,就必须让代码没有[唯一的开始点]和[唯一的结束点]。

   下面分析一下一般页面的代码结构:

<html>
<head>
<title>标题块<title>
</head>
<body><div class="content">内容块</div></body>
</html>

当然实际页面中间会复杂很多,这里只放上基本的结刮乙??析。很容易看出来,采集者采集这篇文章的内容会以<div class="content">开始以</div>结束。那么,如何让这些唯一的开始和结束不存在呢?我想到的是让页面中存在两份一模一样的代码,那么无论任何地方都不会有唯一的开始了。至于两份一模一样的代码页面显示呈现出来的解决方法可以用DISPLAY或者注释的办法让页面正常显示。比方,按上面的例子,我们代码可以这样写:

<html>
<head>
<title>标题块</title>
</head>
<body><div class="content">内容块</div><div class="other">其他内容</div></body>
</html>
<!--
<html>
<head>
<title></title>
</head>
<body><div class="content"></div><div class="other"></div></body>
</html>
-->

上面的是实际上的页面代码,下面的是以这篇文章的模版代码注释多一次。

或许你会说,这块内容

<!--
<html>
<head>
<title></title>
</head>
<body><div class="content">

是唯一的,然而实际上的页面会比这个复杂非常多,会多出非常的内容块,也就是说中间会有非常非常多的变量。

  事实上,这种方法只是一个思路,第二份代码可以不需要是整个页面的复制品,而只是某一部分。当然这样的方法同样存在弊端(或许任何事得到一些注定要失去一些),就是会让页面的体积增大 ;] 如果不是将代码复制一份而是将整个页面内容复制一份出来,搜索引擎会不会认为EMU呢......
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则