防止自己网页的内容被采集有非常多的方法
方法一:内容配图加水印
当你的文章中含有图片时候,可以给图片打上水印,这样就留下了你的信息,对方要采集或者复制您文章后,不可能一张一张的去处水印,这样也算是变相地帮助我们宣传网站。
方法二:内容随机穿插版权信息
在不影响用户阅读体验的情况下,尽量在内容段落之间随机插入一些之间的信息,比如:网站名字,链接,版权作者,QQ等,这样的话,就算对方使用采集器过滤也不可能每篇文章都能过滤得掉。
方法三:作品结尾留作者信息及链接
不过这个方法作用不是很大,因为很多人复制或转载内容时直接去掉了,可以参考方法二,适当在段落结尾处不影响阅读的情况下下随机插入较好。
方法四:主动推送网址给百度收录
百度给出的链接提交方式有以下三种:
1、主动推送:最为快速的提交方式,推荐您将站点当天新产出链接立即通过此方式推送给百度,以保证新链接可以及时被百度收录。
2、sitemap:您可以定期将网站链接放到sitemap中,然后将sitemap提交给百度。百度会周期性的抓取检查您提交的sitemap,对其中的链接进行处理,但收录速度慢于主动推送。
3、手工提交:一次性提交链接给百度,可以使用此种方式。
方法五:利用JS加密网页内容
这个方法是在个别网站上看到的,非常暴力。缺点:搜索引擎爬虫无法识别收录和通杀所有采集器,针对极度讨厌搜索引擎和采集器的网站的站长使用,量力而行,您能豁出去了,别人也就没办法采集你了。
方法六:网站随机采用不同模版
分析:因为采集器是根据网页结构来定位所需要的内容,一旦先后两次模版更换,采集规则就失效,不错。而且这样对搜索引擎爬虫没影响。
适用网站:动态网站,并且不考虑用户体验。
采集器会怎么做:一个网站模版不可能多于10个吧,每个模版弄一个规则就行了,不同模版采用不同采集规则。如果多于10个模版了,既然目标网站都那么费劲的更换模版,成全他,撤。
方法七:利用脚本语言做分页(隐藏分页)
分析:还是那句,搜索引擎爬虫不会针对各种网站的隐藏分页进行分析,这影响搜索引擎对其收录。但是,采集者在编写采集规则时,要分析目标网页代码,懂点脚本知识的人,就会知道分页的真实链接地址。
适用网站:对搜索引擎依赖度不高的网站,还有,采集你的人不懂脚本知识。
采集器会怎么做:应该说采集者会怎么做,他反正都要分析你的网页代码,顺便分析你的分页脚本,花不了多少额外时间。
方法八:限制IP地址单位时间的访问次数
分析:没有哪个常人一秒钟内能访问相同网站5次,除非是程序访问,而有这种喜好的,就剩下搜索引擎爬虫和讨厌的采集器了。
弊端:一刀切,这同样会阻止搜索引擎对网站的收录。
适用网站:不太依靠搜索引擎的网站。
采集器会怎么做:减少单位时间的访问次数,减低采集效率。
希望可以帮到你!
网页防采集策略目前防采集的方法有很多种,先介绍一下常见防采集策略方法和它的弊端及采集对策:
一、判断一个IP在一定时间内对本站页面的访问次数,如果明显超过了正常人浏览速度,就拒绝此IP访问。
弊端:
1、此方法只适用于动态页面,如:asp\\jsp\\php等...静态页面无法判断某个IP一定时间访问本站页面的次数。
2、此方法会严重影响搜索引擎蜘蛛对其收录,因为搜索引擎蜘蛛收录时,浏览速度都会比较快而且是多线程。此方法也会拒绝搜索引擎蜘蛛收录站内文件。
采集对策:只能放慢采集速度,或者不采。
建议:做个搜索引擎蜘蛛的IP库,只允许搜索引擎蜘蛛快速浏览站内内容。搜索引擎蜘蛛的IP库的收集,也不太容易,一个搜索引擎蜘蛛,也不一定只有一个固定的IP地址。
评论:此方法对防采集比较有效,但却会影响搜索引擎对其收录。
二、用javascript加密内容页面
弊端:此方法适用于静态页面,但会严重影响搜索引擎对其收录情况,搜索引擎收到到的内容,也都是加密后的内容。
采集对策:建议不采,如非要采,就把解密码的JS脚本也采下来。
建议:目前没有好的改良建议。
评论:建议指望搜索引擎带流量的站长不要使用此方法。
三、把内容页面里的特定标记替换为”特定标记+隐藏版权文字“
弊端:此方法弊端不大,仅仅会增加一点点的页面文件大小,但容易反采集。
采集对策:把采集来的含有隐藏版权文字内容的版权文字替掉,或替换成自己的版权。
建议:目前没有好的改良建议。
评论:自己感觉实用价值不大,就算是加上随机的隐藏文字,也等于画蛇添足。
四、只允许用户登陆后才可以浏览
弊端:此方法会严重影响搜索引擎蜘蛛对其收录
采集对策:目前落伍已经有人发了对策文章 ,具体对策就看这个吧《ASP小偷程序如何利用XMLHTTP实现表单的提交以及cookies或session的发送》。
建议:目前没有好的改良建议。
评论:建议指望搜索引擎带流量的站长不要使用此方法。不过此方法防一般的采集程序,还是有点效果的。
五、用javascript、vbscript脚本做分页
弊端:影响搜索引擎对其收录。
采集对策:分析javascript、vbscript脚本,找出其分页规则,自己做个对应此站的分页集合页即可。
建议:目前没有好的改良建议。
评论:感觉懂点脚本语言的人都能找出其分页规则。
六、只允许通过本站页面连接查看,如:Request.ServerVariables(“HTTP_REFERER“)
弊端:影响搜索引擎对其收录。
采集对策:不知道能不能模拟网页来源。。。。目前我没有对应此方法的采集对策。
建议:目前没有好的改良建议。
评论:建议指望搜索引擎带流量的站长不要使用此方法。不过此方法防一般的采集程序,还是有点效果的。
从以上可以看出,目前常用的防采集方法,要么会对搜索引擎收录有较大影响,要么防采集效果不好,起不到防采集的效果。那么,还有没有一种有效防采集,而又不影响搜索引擎收录的方法呢?那就请继续往下看吧!
作者:pujiwang 2006-6-22 14:12:15| 回复此帖子
广而告之:
2 回复:[转帖]网页防采集策略 防采集的一些思路的探讨
防采集的一些思路的探讨
关键词: 采集
1、用不同的模板
对于用程序的网站来说,不大可行,一个网站的模板最多也就几套吧。
2、使用robots禁止访问网页目录
这个方法可以有效的防止采集,不过将搜索引擎也封掉了,对于靠搜索引擎吃饭的站长们来说,得不偿失。
一个例子,Disallow 后面就是禁止访问的目录:
作者: 218.19.189.* 封 2006-10-20 11:35 回复此发言 删除
--------------------------------------------------------------------------------
2 [转帖]网页防采集策略
User-agent: *
Disallow: /admin
Disallow: /attachments
Disallow: /images
Disallow: /forumdata
Disallow: /include
3、使用HTTP_REFERER禁止采集,发现来自非本站连接就禁止察看叶面,就像前一段落伍im286.net防DDOS那个禁止调用一样。
这个方法可以比较有效的防止采集,不过也一样把搜索引擎封掉了,对于靠搜索引擎吃饭的站长们来说,得不偿失。
对高手无效,因为HTTP_REFERER可以伪造。但对一般使用采集的人来说,已经足够应付了。
例:
php
if(preg_replace("/https?://([^/]+).*/i", "1", $HTTP_SERVER_VARS['HTTP_REFERER']) != $HTTP_SERVER_VARS['HTTP_HOST']) {
exit('警告----你的操作已经被禁止。http://www.ic98.com')
}
4、使用HTTP_REFERER伪造内容
这个方法可以比较有效的防止采集,不过对于搜索引擎来说,查到的东西跟你伪造的东西一样的,可能会影响收录。(如有不对,请高手指出)
同上,对于高手无效。
5、使用java加密内容。
这个可能会比较有效,但是我对java一窍不通,也就不清楚如何入手了。
但我想,既然你这样使得别人采集到乱码,搜索引擎有可能也是收录到乱码的(我不清楚搜索引擎怎么工作,不过我猜测他们是察看网页源代码的。),也就影响收录。
6、使用java加密网址
同上,有可能让搜索引擎无法搜索到你的网页。
7、生成pdf文件、生成图片
这个方法可以比较有效的防止采集,不过照样让搜索引擎望而却止。
8、加上自己的版权信息
这个方法最大的好处就是不影响搜索引擎,效果马马虎虎,一般上可以让采集者采集到带有自己版权的稿件内容。但是对于可以过滤广告的采集程序来说,不大有效。
以下是作者给俺的PM:
Quote:
你的版权是不是加了你的网站和网址?
只要把网址和网站名替换成他的就可以了啊.这样还让他有了版权功能呢.
反正防采真是头疼....
有点麻烦,我的思路是将网站名称分成一个一个字来显示,他不可能将每个字都替换掉吧?不过要这样我就没办法了。比如说我将我的 武侠网 拆开,分成
武侠网
,$rand_color*是随机颜色,可以自己控制的,如果是动态网页的话,还配合HTTP_REFERER来搞随机,这样子随机性就更大了。一般上,尽量制造难度就是了。模板也可以制造随机性,几个相似的模板轮流来弄,这样子让人采集的难度更大。
不过说实话,要使他们真要搞,那是没办法的事,不过至少要花他们很多的时间去研究。在此之前,他们可能没耐性转向别的站了。
另外,最好不要让人知道你使用随机函数。一般人只是稍微看一下网页代码,就开始采集了。
作者:pujiwang 2006-6-22 14:13:53| 回复此帖子
3 回复:[转帖]网页防采集策略
防采集程序
下午无聊写着完,写完后自己仔细看了看防止采集还是有一定的效果的,哈哈,要的拿去用吧!
<%
Dim AppealNum,AppealCount
AppealNum=10 '同一IP60秒内请求限制10次
AppealCount=Request.Cookies("AppealCount")
If AppealCount="" Then
response.Cookies("AppealCount")=1
AppealCount=1
response.cookies("AppealCount").expires=dateadd("s",60,now())
Else
response.Cookies("AppealCount")=AppealCount+1
response.cookies("AppealCount").expires=dateadd("s",60,now())
End If
if int(AppealCount)>int(AppealNum) then
response.write "歇一会儿吧!整天采集你烦不烦啊!"
response.end
End If
%>
作者:pujiwang 2006-6-22 14:16:31| 回复此帖子
4 回复:[转帖]网页防采集策略
[讨论]防采集这几天上网,竟然也现我的整站被人家全部采集去了。晕倒,几年的资料就这样便宜人家。
还好,人家是个懒虫,栏目都不分,鬼才会去看。
这样才想起怎样防止采集的方法。
注意,只是讨论可行性,还没有提供解决方案。
采集与搜索引擎的机器人不同。采集需要对网页进行分析,以找到规则,分别对标题和内容进行读取并记录到数据库中。
如果我们能够把网页做成没有规则,采集也就无从入手了。
说到规则,我就想趣了空格。
空格这东西,在HTM的<>中,并不产生作用,也就是说,一个空格的位置,你多加几个也是没关系的。象<table>你可以写成<table>,<table >,< table >。都可以,所以,如果在网页里面,特别是采集程序重点分析的位置,我们利用程序,在这些位置加些空格,采集也就难以下手了,就算采到了,也就几篇而已,影响不大。
我准备这样做,象原来在模板中的<table>,我会改成<{$space1$}table{$space2$}>,在这里,{$space1$}和{$space2$}是自定义标签(也可以融合到程序中),然后在程序中使用随机数来决定这两个标签用多少个空格来代替。
呵呵,人家现在想用<table>来做为特征采集是完全做不到的了。但对于我的网页,显示上一点影响也没有,对于搜索引擎的机器人也一点影响没有。
我想这应该是最合适的方法。
希望做过采集或改过采集的讨论一下。
作者:pujiwang 2006-6-22 14:18:27| 回复此帖子
1、限制IP地址单位时间的访问次数分析:没有哪个常人一秒钟内能访问相同网站5次,除非是程序访问,而有这种喜好的,就剩下搜索引擎爬虫和讨厌的采集器了。
弊端:一刀切,这同样会阻止搜索引擎对网站的收录
适用网站:不太依靠搜索引擎的网站
采集器会怎么做:减少单位时间的访问次数,减低采集效率
2、屏蔽ip
分析:通过后台计数器,记录来访者ip和访问频率,人为分析来访记录,屏蔽可疑Ip。
弊端:似乎没什么弊端,就是站长忙了点
适用网站:所有网站,且站长能够知道哪些是google或者百度的机器人
采集器会怎么做:打游击战呗!利用ip代理采集一次换一次,不过会降低采集器的效率和网速(用代理嘛)。
3、利用js加密网页内容
Note:这个方法我没接触过,只是从别处看来
分析:不用分析了,搜索引擎爬虫和采集器通杀
适用网站:极度讨厌搜索引擎和采集器的网站
采集器会这么做:你那么牛,都豁出去了,他就不来采你了
4、网页里隐藏网站版权或者一些随机垃圾文字,这些文字风格写在css文件中
分析:虽然不能防止采集,但是会让采集后的内容充满了你网站的版权说明或者一些垃圾文字,因为一般采集器不会同时采集你的css文件,那些文字没了风格,就显示出来了。
适用网站:所有网站
采集器会怎么做:对于版权文字,好办,替换掉。对于随机的垃圾文字,没办法,勤快点了。
5、用户登录才能访问网站内容
分析:搜索引擎爬虫不会对每个这样类型的网站设计登录程序。听说采集器可以针对某个网站设计模拟用户登录提交表单行为。
适用网站:极度讨厌搜索引擎,且想阻止大部分采集器的网站
采集器会怎么做:制作拟用户登录提交表单行为的模块