网页编程 - 谈谈Microsoft.XMLHTTP的使用

现在网上有大量的小偷出现,比如说新闻小偷,音乐小偷等,其实它们的基本原理是使用了以Microsoft.XMLHTTP这个组件的一个功能,下面我们来谈谈它的原理.

文件测试

<% 

’常用函数 

’1、输入url目标网页地址,返回值getHTTPPage是目标网页的html代码 

function getHTTPPage(url) 

dim Http 

'也可以设置成Microsoft.XMLHTTP控件

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) 

set http=nothing 

if err.number<>0 then err.Clear 

end function

'转换乱玛,直接用xmlhttp调用有中文字符的网页得到的将是乱玛,可以通过adodb.stream组件进行转换

Function BytesToBstr(body) 

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 = "GB2312" ’转换原来默认的UTF-8编码转换成GB2312编码,否则直接用XMLHTTP组件调用有中文字符的网页得到的将是乱码 

BytesToBstr = objstream.ReadText 

objstream.Close 

set objstream = nothing 

End Function 

’下面试着调用本站的的html内容 

Dim Url,Html 

Url="http://www.1love5.com"; 

Html = getHTTPPage(Url) 

Response.write Html 

%>