几招让你的网站免受采集之苦

如今的采集系统是一个比一个NB,站长们辛苦收集制作的网站内容总是很快出现在在另一个网站上,一个网站轻易的就被复制了又复制。有办法既不影响搜索引擎的正常收入又能解决网站被采集之苦么?答案是肯定的。

    最常用的防采集方法:

    1.每个文章的命名不要有任何规律,比如你的文章是<%=id%>.htm的话,请在前面或后面生成个日期,如:20070911-1234.htm,前面的就是日期了,这样对采集新手来说是非常有效的。

    2.不要把所有的文章都放在一个目录下,你可以利用日期生成不同的目录名。

    3.不要所有的文章都用一个模板,制作尽量多的模板,添文章的时候可有选要用哪个模板,一般采集者的采集程序是有针对性的,他在采集前会对你的页面进行分析,如果你所有的页面排版无规律可寻,那么我想他就会放弃了。

    以上三种方法能防住初级采集的,但是对高手来说没什么用。
   
    下面三种方法用限制采集人的IP或SESSION的方法来达到防采集的目的。

方法一:(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())
Else
response.Cookies("AppealCount")=AppealCount+1
response.cookies("AppealCount").expires=dateadd("s",60,now())
End If
if int(AppealCount)>int(AppealNum) then
response.write "网页教学网http://提醒您:抓取很累,歇一会儿吧!"

response.end
End If
%>

 

第二种方法(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
exit for
end if
next
check=check_agent
end function
if check(user_agent)=False then

if http_reffer="" or left(http_reffer,len("http://"&server_name)+1)<>"http://"&server_name&"/" then
%>
<html><body>
<form action='' name=checkrefer id=checkrefer method=post>
</form>
<script>
document.all.checkrefer.action=document.URL;
document.all.checkrefer.submit();
</script>
</body></html>
<%response.end
end if
end if
%>

 

第三种方法:

 

    用Persistence为静态页面增加session功能  

    一般来说,只有服务器端的CGI程序(ASP、PHP、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用来授权。

 

以下为引用的内容:
<STYLE>
.userData {behavior:url(#default#userdata);}
</STYLE>
<SCRIPT language=Javascript>
function fnSave(){
oPersistDiv.setAttribute("bIsValid","true");
oPersistDiv.save("oXMLStore");
}
</SCRIPT>

 

    · 在“导航页面”的<body>和</body>区域中定义一个层用来标识Persistence对象

<DIV CLASS=userData ID="oPersistDiv"></DIV>

    · 在“导航页面”的超链接属性中加入一条语句用来调用函数fnSave:

<a href='redhat2.htm' onmousedown="fnSave()">

    接下来,为“内容页面”加入验证功能。

    · 在“内容页面”中加入一个STYLE用来定义persistent类,同时加入存储函数fnLoad用来判断合法性。

以下为引用的内容:
<STYLE>
.userData {behavior:url(#default#userdata);}
</STYLE>
<SCRIPT>
var bPageValid=false;
function fnLoad(){
oPersistDiv.load("oXMLStore");
if((oPersistDiv.getAttribute("bIsValid"))&&
(oPersistDiv.getAttribute("bIsValid")=="true")){
bPass=true;
}
else{
bPass=false;
}
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>

 

    ***插入以上代码的页面需在同一个文件夹下,否则会出错。
从以上范例可看出,通过persistence的使用,使得普通的静态内容页面具有了session功能,一般的不敏感信息完全可以通过session保存在客户端。

    使用多个带有session功能的静态页面可以完成众多复杂任务,如虚拟购物车,高级搜索引擎等。同时,由于将以前服务器端承担的部分session任务转移到客户端,减少了数据交互量,大大降低了服务器的负担。

本文来自:网页教学网()原文链接:

时间: 2024-10-14 06:58:48

几招让你的网站免受采集之苦的相关文章

[原创]防止网站被采集最有效的三种方法

网站|原创|防采集 总结了一下,有三种实用的方法. 1.文章头尾加随机广告..2.文章列表加随机不同的链接标签,比如<a href="",<a class="dds" href=''3.正文头尾或列表头尾添加<!--重复特征代码--> 第一种防采集方法:下面我详细说一下这三种方法的实际应用: 如果全加上,绝对可以有效的防采集,单独加一种就可以让采集者头疼..完全可以对付通用的CMS采集程序.. 在采集时,通常都是指定头尾特征从哪到哪过滤.这里

五招教你优化网站标题 流量翻番

笔者做SEO时间也有两年了,长期观察发现:80%的网站标题很垃圾,15%的标题勉强,只有5%的标题比较优秀,让人侧目.为什么会是这个结果? 因为我们的网站SEO负责人没有对标题重视!但其实,标题不只是一排文字而已,标题是窗口.是广告,是吸引用户点击的最基本入口!辛辛苦苦把排名做上去, 却因为标题差而没有点击和流量,这样的结果你希望吗?笔者以经验总结五招教你优化网站标题,流量翻番. 1.长度 事实证明,长标题比短标题更易吸引用户.有些企业为了突出自己,标题很短,10个字以内,但其实,如果你不是淘宝

网站内容采集之感悟一二三

每个站长都深知网站内容为王,内容至上的道理,可以毫不夸张的说一个网站的内容是网站的根基,是网站的灵魂,内容空洞.一无用处内容的网站在搜索引擎数据库中没有立足的位置.而现实是从一个网站上线开始信息填充到网站中.后期的逐渐壮大网站的羽翼逐渐丰满,网站的信息增加成了每个站长必不可少,又很头疼的事,采集软件的出现可以说解决了很多站长苦恼,很多站长心里都知道原创好,但是现实的局限性往往还是或多或少的使用采集软件进行文章的更新,百度6月风暴的动荡出发点之一也就是打击采集站,这也使得很多使用过采集的站遭到重创

网站防采集方法

    第1种方法:     防采集第一招 用Persistence为静态页面增加session功能       一般来说,只有服务器端的CGI程序(ASP.PHP.JSP)具有session会话功能,用来保存用户在网站期间(会话)的活动数据信息,而对于数量众多的静态页面(HTML)来说,只能使用客户端的cookies来保存临时活动数据,但对于cookies的操作是个很烦琐的过程,远没有对于session操作那样简便.为此,本文向读者推荐一种在DHTML中的解决方案"Persistence技术&

如何让网站防采集?

网站|采集 很多防采集方法在施行的时候需要考虑是否影响搜索引擎对网站的抓取,所以先来分析下一般采集器和搜索引擎爬虫采集有何不同. 相同点: a. 两者都需要直接抓取到网页源码才能有效工作, b. 两者单位时间内会多次大量抓取被访问的网站内容; c. 宏观上来讲两者IP都会变动; d. 两者多没耐心的去破解你对网页的一些加密(验证),比如网页内容通过js文件加密,比如需要输入验证码才能浏览内容,比如需要登录才能访问内容等. 不同点: 搜索引擎爬虫先忽略整个网页源码脚本和样式以及html标签代码,然

老网站的采集文章为何能比新站原创来的好?

采集现象到今还是没消停过,还是有越来越多的站长每日的通过采集规则进行采集他人的原创辛勤之作.当中有众多的站长因为采集而导致网站走向灭亡,当然了也有众多的站长却因此而越做越好?那是为什么呢?其实归根到底就是你的网站是否有忠实用户,若有的话,那么你的网站走向成功的几率蛮高的,否则必定走向灭亡. 那么网站是否需要原创来支撑呢?我想对于每一个站来说或多或少都要有一些新鲜点的原创内容注入才行,就好比当你不小心划破了手,留了很多血.就算你通过别人的血液来注入终究只是暂时的,最终还是要靠自身自生来维持你的生命

网站内容采集伪原创技巧

这是我在公司做的一篇关于伪原创写法的贴子,写这个并不是鼓励大家去抄改编.只是强调下鲁迅先生的拿来主义,他山之石可以攻玉,会利用资源的人才能掘取到更多的资源,借鉴后总结出自己的才是拿来主义的真谛.关于伪原创也不想多谈些什么,必竟不是自己的原创.必竟伪是提不到桌面上的,而我却在为伪写文立著,所以如果您对于本文有任何疑义的话,请不要读下去了.因为有时候伪到一定程序便是真了. 在网络中,最重要的部分无疑是内容,网站只是一种内容的体现.内容为王总是对的.但这不是说你能写出原创的内容,就能在网络上称王称霸了

站群优化四招让你摆脱网站被K的危险

现在草根站长如果仅仅依靠一个网站打天下,是非常困难的事情,那么我们要是做一个站群那么通过以站养站的方式来运作的话,那还是很容易赚到钱的,只不过站群优化如果不能够隐藏自己的意图,是很容易让百度的蜘蛛识别的,那时候你的网站就面临了被K的危险了!下面我们就来谈谈如何摆脱这种危险! 一:将域名的whois信息隐藏起来 我们在注册域名的时候,填写个人信息一定要把名字多写几个,比如多写几个朋友的或者家人的,然后还要把WHOIS信息隐藏起来,要不然搜索引擎肯定能够找到这些信息,如果都是同样的名字和身份证号的信

网站被采集后被百度K 究竟谁之过

今天看到有人说被W3SO采集后新站容易被K.刚开始觉得有些不可思议,毕竟现在的互联网,信息复制转载仍是主要的内容之一.中小网站并不具备创造内容的条件,特别是论坛.博客等自由场地.对于优秀的内容,转来转去也是常见的.就算是有些知名的论坛,也会发现有些大半的帖子都是用户转自其它网站而来的.很明显,被采集了的网站是被认为复制了转载他的网站的内容,原创成了转载.转载成了原创.后来想想,自从百度6月更新算法以来,确实很多原创的网站受到了降权被K,也就不奇怪了.那这胡扯般的行为,究竟谁之过. 搜索引擎本身并