超碰人人人人人,色婷婷综合久久久久中文一区二区,国产-第1页-浮力影院,欧美老妇另类久久久久久

LOGO OA教程 ERP教程 模切知識(shí)交流 PMS教程 CRM教程 開發(fā)文檔 其他文檔  
 
網(wǎng)站管理員

ASP技巧:動(dòng)態(tài)程序防采集的新方法

admin
2010年8月19日 22:28 本文熱度 4225
昨天在網(wǎng)上看到一個(gè)防采集軟件,說(shuō)采集只訪問(wèn)當(dāng)前網(wǎng)頁(yè),不會(huì)訪問(wèn)網(wǎng)頁(yè)的圖片、JS等,今天突然想到,通過(guò)動(dòng)態(tài)程序和Js訪問(wèn)分別記錄訪問(wèn)者的IP,然后進(jìn)行IP判斷,由于采集過(guò)程不會(huì)訪問(wèn)JS,采集的時(shí)候只會(huì)查到用動(dòng)態(tài)程序記錄的IP,而不會(huì)有通過(guò)JS記錄的IP,從而實(shí)現(xiàn)網(wǎng)頁(yè)程序的防采集。

防采集的原理非常簡(jiǎn)單,首先放一段動(dòng)態(tài)語(yǔ)句,把訪問(wèn)者的IP加入到數(shù)據(jù)庫(kù)的一個(gè)表里,然后在頁(yè)面底部加入一個(gè)JS,JS直接訪問(wèn)動(dòng)態(tài)頁(yè)面,將訪問(wèn)者的IP加入到數(shù)據(jù)庫(kù)的另外一個(gè)表里。再次訪問(wèn)的時(shí)候,從兩個(gè)表里讀IP數(shù)據(jù),然后判斷時(shí)間差,如果只在第一個(gè)表里找到,在第二個(gè)表里找不到,或者時(shí)間差超過(guò)10秒,則認(rèn)為是采集。

優(yōu)點(diǎn)

1.部署簡(jiǎn)單,只要是動(dòng)態(tài)語(yǔ)言就能很容易的實(shí)現(xiàn),無(wú)需借助服務(wù)器端程序

2.殺傷力大,幾乎能封殺所有的采集過(guò)程

缺點(diǎn)

1.第一個(gè)缺點(diǎn)還是殺傷力大,如果需要實(shí)際使用需要考慮一些特殊情況,以免誤殺已經(jīng)殺掉搜索爬蟲

2.只適用于動(dòng)態(tài)網(wǎng)頁(yè),靜態(tài)頁(yè)面就沒(méi)法用了

流程寫的比較亂,不過(guò)原理本身就不是很復(fù)雜,下面附上程序例子,懂ASP的應(yīng)該很快就能看懂。

本文由方卡在線(http://www.fangka.net/)原創(chuàng),轉(zhuǎn)載請(qǐng)注明出處。如有雷同,純屬巧合!

程序例子(ASP+ACCESS)(測(cè)試程序下載):

1.建立數(shù)據(jù)庫(kù)

表1:Ip1,字段Ip1_Adderss(文本),Ip1_Time(日期/時(shí)間,默認(rèn)值=Now())

表2:Ip2,字段Ip2_Adderss(文本),Ip2_Time(日期/時(shí)間,默認(rèn)值=Now())

2.Index.asp(僅動(dòng)態(tài)代碼,全部代碼請(qǐng)見測(cè)試程序中)

<%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%>
<%
Dim Conn,Rs,Sqlstr,Ip,IpTime,IpTime2,NewUser
NewUser=0
Set Conn = Server.CreateObject("Adodb.Connection")
Set Rs=Server.Createobject("Adodb.RecordSet")
ConnStr="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("Data.mdb")
Conn.Open ConnStr
Ip=Request.ServerVariables("REMOTE_ADDR")
Sqlstr="Select * From [Ip1] Where Ip1_Address='"&Ip&"' Order By Ip1_Id Desc"
Rs.Open Sqlstr,Conn,1,3
If Rs.Eof Then
NewUser=1
Application.Lock()
Rs.AddNew()
Rs("Ip1_Address")=Ip
Rs.Update()
Application.UnLock()
Else
IpTime=Rs("Ip1_Time")
Application.Lock()
Rs.AddNew()
Rs("Ip1_Address")=Ip
Rs.Update()
Application.UnLock()
End If
Rs.Close
If NewUser=0 Then
Sqlstr="Select * From [Ip2] Where Ip2_Address='"&Ip&"' Order By Ip2_Id Desc"
Rs.Open Sqlstr,Conn,1,3
If Rs.Eof Then
Rs.Close
Response.Write("請(qǐng)勿采集!")
Response.End()
Else
IpTime2=Rs("Ip2_Time")
If DateDiff("s",IpTime2,IpTime)>10 Then
Rs.Close
Response.Write("請(qǐng)勿采集!")
Response.End()
End If
End If
Rs.Close
End If
%>


3.Js.asp

<%
Dim Conn,Rs,Sqlstr,Ip
Set Conn = Server.CreateObject("Adodb.Connection")
Set Rs=Server.Createobject("Adodb.RecordSet")
ConnStr="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("Data.mdb")
Conn.Open ConnStr
Ip=Request.ServerVariables("REMOTE_ADDR")
Sqlstr="Select * From [Ip2]"
Rs.Open Sqlstr,Conn,1,3
Application.Lock()
Rs.AddNew()
Rs("Ip2_Address")=Ip
Rs.Update()
Application.UnLock()
Rs.Close
%>

4.Get.asp

<%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%>
<%
Response.Write(Server.HTMLEncode(GetHttpPage("/Index.asp","GB2312")))
'==============================
'函 數(shù) 名:GetHttpPage
'作 用:獲取頁(yè)面源代碼函數(shù)
'參 數(shù):網(wǎng)址HttpUrl
'==============================
Function GetHttpPage(HttpUrl,Code)
If IsNull(HttpUrl)=True Or HttpUrl="" Then
GetHttpPage="A站點(diǎn)維護(hù)中!"
Exit Function
End If
On Error Resume Next
Dim Http
Set Http=server.createobject("MSX"&"ML2.XML"&"HTTP")
Http.open "GET",HttpUrl,False
Http.Send()
If Http.Readystate<>4 then
Set Http=Nothing
GetHttpPage="B站點(diǎn)維護(hù)中!"
Exit function
End if
GetHttpPage=BytesToBSTR(Http.responseBody,Code)
Set Http=Nothing
If Err.number<>0 then
Err.Clear
GetHttpPage="C站點(diǎn)維護(hù)中!"
Exit function
End If
End Function
'==============================
'函 數(shù) 名:BytesToBstr
'作 用:轉(zhuǎn)換編碼函數(shù)
'參 數(shù):字符串Body,編碼Cset
'==============================
Function BytesToBstr(Body,Cset)
Dim Objstream
Set Objstream = Server.CreateObject("ado"&"d"&"b.st"&"re"&"am")
Objstream.Type = 1
Objstream.Mode =3
Objstream.Open
Objstream.Write body
Objstream.Position = 0
Objstream.Type = 2
Objstream.Charset = Cset
BytesToBstr = Objstream.ReadText
Objstream.Close
set Objstream = nothing
End Function
%>

該文章在 2010/8/19 22:28:49 編輯過(guò)
關(guān)鍵字查詢
相關(guān)文章
正在查詢...
點(diǎn)晴ERP是一款針對(duì)中小制造業(yè)的專業(yè)生產(chǎn)管理軟件系統(tǒng),系統(tǒng)成熟度和易用性得到了國(guó)內(nèi)大量中小企業(yè)的青睞。
點(diǎn)晴PMS碼頭管理系統(tǒng)主要針對(duì)港口碼頭集裝箱與散貨日常運(yùn)作、調(diào)度、堆場(chǎng)、車隊(duì)、財(cái)務(wù)費(fèi)用、相關(guān)報(bào)表等業(yè)務(wù)管理,結(jié)合碼頭的業(yè)務(wù)特點(diǎn),圍繞調(diào)度、堆場(chǎng)作業(yè)而開發(fā)的。集技術(shù)的先進(jìn)性、管理的有效性于一體,是物流碼頭及其他港口類企業(yè)的高效ERP管理信息系統(tǒng)。
點(diǎn)晴WMS倉(cāng)儲(chǔ)管理系統(tǒng)提供了貨物產(chǎn)品管理,銷售管理,采購(gòu)管理,倉(cāng)儲(chǔ)管理,倉(cāng)庫(kù)管理,保質(zhì)期管理,貨位管理,庫(kù)位管理,生產(chǎn)管理,WMS管理系統(tǒng),標(biāo)簽打印,條形碼,二維碼管理,批號(hào)管理軟件。
點(diǎn)晴免費(fèi)OA是一款軟件和通用服務(wù)都免費(fèi),不限功能、不限時(shí)間、不限用戶的免費(fèi)OA協(xié)同辦公管理系統(tǒng)。
Copyright 2010-2025 ClickSun All Rights Reserved