2007-04-30 13:00 作者: 出處: 論壇整理 責任編輯:原野
現在網上流行的小偷程式比較多,有新聞類小偷,音樂小偷,下載小偷,那麼它們是如何做的呢,下面我來做個簡單介紹,希望對各位站長有所幫助。
原理
小偷程式實際上是通過了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.readystate4 then exit function end if getHTTPPage=bytesToBSTR(Http.responseBody,"GB2312") set http=nothing if err.number0 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.*****.com/web_file/的html內容:
Dim Url,Html Url="http://www.*****.com/web_file/" Html = getHTTPPage(Url) Response.write Html |