現在網上流行的小偷程序比較多,有新聞類小偷,音樂小偷,下載小偷,那麼它們是如何做的呢,下面我來做個簡單介紹,希望對各位站長有所幫助。
(一)原理
小偷程序實際上是通過了xml中的XMLhttp組件調用其它網站上的網頁。比如新聞小偷程序,很多都是調用了sina的新聞網頁,並且對其中的Html進行了一些替換,同時對廣告也進行了過濾。用小偷程序的優點有:無須維護網站,因為小偷程序中的數據來自其他網站,它將隨著該網站的更新而更新;可以節省服務器資源,一般小偷程序就幾個文件,所有網頁內容都是來自其他網站。缺點有:不穩定,如果目標網站出錯,程序也會出錯,而且,如果目標網站進行升級維護,那麼小偷程序也要進行相應修改;速度,因為是遠程調用,速度和在本地服務器上讀取數據比起來,肯定要慢一些。
(二)事例
下面就XMLHTTP在ASP中的應用做個簡單說明
<%
'常用函數
'1、輸入url目標網頁地址,返回值getHTTPPage是目標網頁的Html代碼
function getHTTPPage(url)
dim Http
set Http=server.createobject("MSXML2.XMLHTTP")
Http.open "GET",url,false
Http.send()
if Http.readystate<>4 then
exit function
end if
getHTTPPage=bytesToBSTR(Http.responseBody,"GB2312")
set http=nothing
if err.number<>0 then err.Clear
end function
'2、轉換亂瑪,直接用XMLhttp調用有中文字符的網頁得到的將是亂瑪,可以通過adodb.stream組件進行轉換
Function BytesToBstr(body,Cset)
dim obJStream
set obJStream = Server.CreateObject("adodb.stream")
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
'下面試著調用http://www.3doing.com/earticle/的Html內容
Dim Url,Html
Url="http://www.3doing.com/earticle/"
Html = getHTTPPage(Url)
Response.write Html
%>