如何突破网站防采集集策略

网站防采集方法
作者:用户
本文讲的是网站防采集方法,
第1种方法:
防采集第一招 用Persistence为静态页面增加session功能
一般来说,只有服务器端的CGI程序(ASP、PHP、JSP)具有session会话功能,用来保存用户在网站期间(会
第1种方法:
防采集第一招 用Persistence为静态页面增加session功能
一般来说,只有服务器端的CGI程序(ASP、、JSP)具有session会话功能,用来保存用户在网站期间(会话)的活动数据信息,而对于数量众多的静态页面(HTML)来说,只能使用客户端的cookies来保存临时活动数据,但对于cookies的操作是个很烦琐的过程,远没有对于session操作那样简便。为此,本文向读者推荐一种在DHTML中的解决方案“Persistence技术”,使得在静态页面中也能使用session会话功能。
Microsoft Internet Explorer 5浏览器和以后的版本都支持使用状态保持(Persistence)技术,让我们能够在当前会话过程中保存一些数据对象到客户端,减少了对服务器的访问请求,充分发挥了客户端机的数据处理能力,从而也整体提升了页面显示效率。
Persistence技术有以下几种行为可供调用:
· saveFavorite—当页面被添加到收藏夹时保存页面状态和信息
· saveHistory—在当前会话中保存页面状态和信息
· saveSnapshot—当页面被保存到硬盘时,保存页面状态和信息
· userData—在当前会话中用XML格式保存页面状态和信息
Persistence技术打破了以前使用cookies和session的传统,继承了cookies的一些安全策略,同时也增加了存储和管理数据的能力。我们的每个页面有64KB的用户数据存储容量,对于每个站点总计有640KB的存储上限。
Persistence技术存储的数据格式符合XML标准,所以可以使用DOM技术中的getAttribute和setAttribute方法来存取数据。
下面是一个Persistence技术的典型应用,通过对Persistence存储数据的分析,使得静态页面具有验证功能。
实际判断过程是这样的:
1.有三个对象:游客V、导航页面A、内容页面C
2.游客V只能通过导航页面A的链接才能看到内容页面C;
3.如果游客V是通过其它途径来访问内容页面C(比如通过其它网站的超链接、直接在IE地址栏中输入网址访问等),内容页面C将自动提示版权信息,显示空白页。
具体实现步骤:
· 在“导航页面”中加入一个STYLE用来定义persistent类,同时加入存储函数fnSave用来授权。
.userData {behavior:url(#default#userdata);}
&SCRIPT language=Javascript&
function fnSave(){
oPersistDiv.setAttribute("bIsValid","true");
oPersistDiv.save("oXMLStore");
· 在“导航页面”的&body&和&/body&区域中定义一个层用来标识Persistence对象
&DIV CLASS=userData ID="oPersistDiv"&&/DIV&
· 在“导航页面”的超链接属性中加入一条语句用来调用函数fnSave:
&a href='redhat2.htm' onmousedown="fnSave()"&
接下来,为“内容页面”加入验证功能。
· 在“内容页面”中加入一个STYLE用来定义persistent类,同时加入存储函数fnLoad用来判断合法性。
.userData {behavior:url(#default#userdata);}
var bPageValid=
function fnLoad(){
oPersistDiv.load("oXMLStore");
if((oPersistDiv.getAttribute("bIsValid"))&&
(oPersistDiv.getAttribute("bIsValid")=="true")){
oPersistDiv.setAttribute("bIsValid","false");
oPersistDiv.save("oXMLStore");
if(bPass==false){
var sError="来源不明,请您通过授权网站访问我们.";
alert(sError);
location.href="about:blank";
} &/SCRIPT&
· 修改“内容页面”的区域如下:
&BODY onload="fnLoad()"&
&DIV CLASS=userData ID="oPersistDiv"&&/DIV&
方法2:(ASP代码):
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())
response.Cookies("AppealCount")=AppealCount+1
response.cookies("AppealCount").expires=dateadd("s",60,now())
if int(AppealCount)&int(AppealNum) then
response.write "网页特效http://www.qpsh.com提醒您:抓取很累,歇一会儿吧!"
response.end
第3种方法(ASP):
user_agent=Request.ServerVariables("HTTP_USER_AGENT")
http_reffer=Request.ServerVariables("HTTP_REFERER")
server_name=Request.ServerVariables("SERVER_NAME")
'检查当前用户是否是蜘蛛人
function check(user_agent)
allow_agent=split("Baiduspider,Scooter,ia_archiver,Googlebot,FAST-WebCrawler,MSNBOT,Slurp",",")
check_agent=false
for agenti=lbound(allow_agent) to ubound(allow_agent)
if instr(user_agent,allow_agent(agenti))&0 then
check_agent=true
check=check_agent
end function
if check(user_agent)=False then
if http_reffer="" or left(http_reffer,len(""http://"&server_name&"/"&http://"&server_name)+1)&&"http://"&server_name&"/" then
&html&&body&
&form action='' name=checkrefer id=checkrefer method=post&
document.all.checkrefer.action=document.URL;
document.all.checkrefer.submit();
&/body&&/html&
&%response.end
***插入以上代码的页面需在同一个文件夹下,否则会出错。
从以上范例可看出,通过persistence的使用,使得普通的静态内容页面具有了session功能,一般的不敏感信息完全可以通过session保存在客户端。
1.每个的命名不要有任何规律,比如你的文章是&%=id%&.htm的话,请在前面或后面生成个日期,如:4.htm,前面的就是日期了,这样对采集新手来说是非常有效的。
2.不要把所有的文章都放在一个目录下,你可以利用日期生成不同的目录名。
3.不要所有的文章都用一个模板,制作尽量多的模板,添文章的时候可有选要用哪个模板,一般采集者的采集程序是有针对性的,他在采集前会对你的页面进行分析,如果你所有的页面排版无规律可寻,那么我想他就会放弃了。
以上三种方法能防住初级采集的,但是对高手来说没什么用。
下面三种方法用限制采集人的IP或SESSION的方法来达到防采集的目的。
以上是云栖社区小编为您精心准备的的内容,在云栖社区的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索存储
网站防采集、如何防止网站被采集、网站防止采集、网站如何防止采集、网站如何防采集,以便于您获取更多的相关知识。
稳定可靠、可弹性伸缩的在线数据库服务,全球最受欢迎的开源数据库之一
6款热门基础云产品6个月免费体验;2款产品1年体验;1款产品2年体验
弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率
开发者常用软件,超百款实用软件一站式提供
云栖社区(yq.aliyun.com)为您免费提供相关信息,包括
,所有相关内容均不代表云栖社区的意见!有效防止文章被复制采集的方法技巧-马海祥博客
新型SEO思维就是从一个全新的层次上提升seo优化的水平,达到网络信息最佳化的展示效果!
> 有效防止文章被复制采集的方法技巧
有效防止文章被复制采集的方法技巧
时间:&&&文章来源:www.mahaixiang.cn&&&访问次数:
最近在和几个博友闲聊,在谈到为什么最近博客都不更新文章了的时候。博主们就开始吐槽说自己辛辛苦苦原创的文章,被人家直接复制粘贴过去,发到各大论坛来做外链,很是气愤呀!确实,现在一些推广人员为了做外链,提高自己网站权重,就喜欢复制别人网站的原创文章,不加作者连接,只加上自己需要做的连接,到各大论坛发布,这严重损害了原创作者的心。马海祥博客的很多文章也被这样复制过,最让人生气的就是被人复制粘贴过去的文章排名还比你的原创文章排名还好,流量也被截取了。
虽然最近百度算法有进一步的升级,但是对于源网站的排名情况也没有进一步的提升,所以为了最大化的避免站长们的原创文章复制导致的损失,在此马海祥博客跟大家分享三种防止文章被复制采集的方法:
方法一:增加版权信息
对于用户体验最好的,就是可以允许复制,但是我们可以在复制的内容上面加入版权信息,这种方法很多网站都开始使用了。具体方法是:
找到系统后台-模块-默认模块管理-文章页模板中加入下面的代码,可以试试,在IE内核的浏览器中可以可以实现复制网页正文内容时自动添加版权信息的功能!
JavaScript代码 &script language=&javascript& type=&text/javascript&&
  document.body.oncopy = function () {
  setTimeout( function () {
  var text = clipboardData.getData(&text&);
  if (text) {
  texttext = text + &\r\n(这里是你的文章版权信息,去掉括号):&+location.
  clipboardData.setData(&text&, text);
  }, 100 )
  &/script&
方法二:使文章页面无法复制代码
找到系统后台默认模块管理中的footer.htm,或者文章页模板的底部代码模块,将以下代码加到页面文件的最后的一个&\div&后边,保存即可
&script language=&javascript&&document.oncontextmenu=new Function(&event.returnValue=false&);document.onselectstart=new Function(&event.returnValue=false&);&/script&
方法三:使用防采集代码
其实正常的采集工具,一般都需要内容开始代码和结束代码具有唯一性。所以我们可以在文章页面开始的&div class=&title&&中加入一段id=&{dede:field.id/}&,从而让文章自动获取一个文章ID,如下图所示,这样每篇文章的ID都是不一样的,所以采集工具采集的时候,每次只能采集一篇文章,进而可以有效防止低级采集工具的采集,但是高级采集工具可能防不住了!
最后再提醒大家一点,因为每个网站根据使用时间和布局的不同,部分系统模板代码可能都会存在一点区别,所以建议在修改之前要保存一份源代码,以避免不小心的误操作导致整个网站的损失。
马海祥博客知识扩展:
本文为原创文章,如想转载,请注明原文网址摘自于http://www.mahaixiang.cn/CMS/226.html,注明出处;否则,禁止转载;谢谢配合!
您可能还会对以下这些文章感兴趣!
最近百度跟360的搜索引擎之争,也使得更多人开始关注搜索引擎了,回想搜索引擎的快速发展也就是近15年发生……
网络实名制是个长期以来争议不断的话题。一方面,当人们面对越来越多的网上低俗与不良信息、黑客与木马、网……
清明节又叫踏青节,在仲春与暮春之交,也就是冬至后的第108天。是中国传统节日,也是最重要的祭祀节日之一……
由于此次整理的SEO作弊方法大全的内容比较多,也比较全面,导致……
最近,我明显发现访问马海祥seo博客的博友越来越多了,随之而来……
很多做SEO的朋友都会问,是不是网站收录越多网站关键字排名越好……
相信做个seo的,或者自己已经是站长的,都或多或少的对自己负责……
最近一直听到圈里的朋友抱怨说,自己辛辛苦苦写的文章,发表的前……
作为一名专业的SEO人员,我们很多的时候都在研究站点中有多少页……
本月热点文章如何突破网站防盗链来采集网站之一过程描述演示如何突破网站防盗链来采集网站之一过程描述演示霸道科技百家号这种情况大多出现在仿站的情况下,即有用户或我们自己的需求,需要做一个和目标站一样的皮肤模板的网站。最原始的方法就是网页,另存为。高级点的是查看源代码 ,下载源代码,再逐步下载里面的图片或是音频资源。再高级点的,就是用趴站工具来做。但目前从技术点来说,很多网站都做了图片的防盗链,还有的做了静态资源的防盗链。面对防盗链这种情况,大多数会伪造相应的refer来请求数据,但服务器也不全是傻子啊。伪造的必定不真实,所以势必会被封掉,而且采集下来的资源也不一定会完整。我这里描述一下我是如何突破这条防线来做的。第一,我们要明确,我们用浏览器是肯定可以正常打开的。必定网站是给别人看的,浏览器要是打不开。那可就坑得了。第二,浏览器既然可以打开,那说明资源也是正确的加载到本地了。那么我们是可以在浏览器端来劫持请求和获取响应主主体内容的。第三,将获取的主体内容,发送到本地请求的一个服务器上做保存处理。就突破了防盗链的限制。第四,那么本地浏览器怎么获取请求返回的主体呢?使用谷歌浏览器的扩展插件。第五,关于谷歌浏览器扩展的开发,请关注本号,会持续为您更新文章。那么直接上来开发好的截图:1)软件要进行相应的设置,即采集的网站放到哪个目录。另外,一个网站引用的资源可能是站外的,也要设置一下域名过滤规则。如下图:软件配置2)打开要采集的网站。要采集的网站3)打开采集器,重新刷新网站采集的数据资源经过以上步骤,可以看到,列出了所有的请求,采集自动已经将内容主体发送到了本地服务器。采集的结果如下图:目录都弄好了,可以直接访问 index.html进行访问。欲要知晓如何进行采集器的开发,请持续关注本号哦。本文仅代表作者观点,不代表百度立场。系作者授权百家号发表,未经许可不得转载。霸道科技百家号最近更新:简介:分享好听的音乐,传播正能量。作者最新文章相关文章104被浏览2,847分享邀请回答0添加评论分享收藏感谢收起

我要回帖

更多关于 策略塔防游戏 的文章

 

随机推荐