打印本文 打印本文 关闭窗口 关闭窗口
一段ASP防采集的代码,让小偷程序无处可采
作者:武汉SEO闵涛  文章来源:敏韬网  点击数2218  更新时间:2010/3/21 21:32:59  文章录入:mintao  责任编辑:mintao

前几天接到客户的反馈,说他的站点页面被taobao站点引用,导致自己服务器的流量过大,需要提供对策,但是还不能屏蔽了taobao站点,我们再三考虑分析,可以使用如下代码:
一,防复制粘贴:
<%        '作用:文字防复制乱码 函数
        'Date:2006-3-6
        '作者:blue2004
        '参数str 为原文,str1作者也是你自己,reslut产生乱码的种子
        Function ReadToCode(str,Str1,result)
                dim name
                dim i,j,k
                If isnull(str) then
                        ReadToCode=""
                        Exit Function
                End If
                Randomize
                k=instr(str,"</P>")
                Do while k>0
                        result=""
                        for i=0 to 19
                                j=Int(128 * Rnd)+1
                                if j=60 or j=62 then
                                        j=j+1
                                end if
                                result =result&chr(j) ' 产生随机数。
                            next
                        result="<span style='DISPLAY: none'>"&result&"</span>"
                        str=replace(str,"</p>",result&"<'/p>",1,1)
                        k=instr(str,"</p>")
                loop
                str=replace(str,"<'/p>","</p>")

                k=instr(str,"<br>")
                Do while k>0
                        result=""
                        for i=0 to 19
                                j=Int(128 * Rnd)+1
                                if j=60 or j=62 then
                                        j=j+1
                                end if
                                result =result&chr(j) ' 产生随机数。
                        next
                        result="<span style='DISPLAY: none'>"&result&"</span>"
  str=replace(str,"<br>",result&"<'br>",1,1)
                        k=instr(str,"<br>")
                loop
                str=replace(str,"<'br>","<br>")
                ReadToCode=str&"<div align=right style='color=gray'>[版权归原作者及"&Str1&"共同拥有,转载请注明出处]</div>"
        End Function


Dim a
a="嘿嘿,一篇<br>不错的好<p>文章哦</P><br><P>我艹,版权所有。</p>"


'Only For Test
response.write (a)

Dim b
'为配合转换,字符串a的大小都替换成小写
b=ReadToCode(LCase(a),"blue2004","www.mintao.net")

'Output
response.write b
%>
二、防采集
防止网站内容被人小偷和采集的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 "抓取很累,歇一会儿吧!"
response.end
End If
%> 

打印本文 打印本文 关闭窗口 关闭窗口