| 
    
      
         
          |   ASP实现小偷程序原理和简单示例  | 
         
         
          |   来源:转载   人气:1019   录入时间:2007-11-8  | 
         
         
           
                (一)原理 
    
    小偷程序实际上是通过了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 
    %> 
             
             
             | 
         
         
          |   | 
         
       
  
 |