通过MSXML2自动获取QQ个人头像及在线情况(给初学者)

王朝other·作者佚名  2006-12-16
窄屏简体版  字體: |||超大  

不知道大家对MSXML2.XMLHTTP是不是很熟悉,不过它的功能可以说是达到了极点.你可以通过它把别人的网站都"搬回来",呵呵,吹牛啦!!

今天我就用它从腾讯网站获取一个QQ号码的头像,在线情况(人家隐身了我也没办法).当然大家也可以获取QQ的昵称,所在地等.具体实现方法如下:

先建立两个函数,用来处理一个URL

<%

function getHTTPPage(url)

dim http

set http=createobject("MSXML2.XMLHTTP")

Http.open "GET",url,false

Http.send()

if Http.readystate<>4 then

exit function

end if

getHTTPPage=bytes2BSTR(Http.responseBody)

set http=nothing

if err.number<>0 then err.Clear

end function

'''''''以下处理字符

Function bytes2BSTR(vIn)

dim strReturn

dim i,ThisCharCode,NextCharCode

strReturn = ""

For i = 1 To LenB(vIn)

ThisCharCode = AscB(MidB(vIn,i,1))

If ThisCharCode < &H80 Then

strReturn = strReturn & Chr(ThisCharCode)

Else

NextCharCode = AscB(MidB(vIn,i+1,1))

strReturn = strReturn & Chr(CLng(ThisCharCode) * &H100 + CInt(NextCharCode))

i = i + 1

End If

Next

bytes2BSTR = strReturn

End Function

%>

这两个函数你可以收藏起来,用处大得不得了.

大家可以先看看这个地址http://friend.qq.com/cgi-bin/friend/oicq_find?oicq_no=5292816

(QQ是本人的,我每天都很忙,请大家自觉,呵呵,讨论问题非常欢迎)

以下我们就通过腾讯的好友查找来获取信息,

<%

function qqhead(qq)

url="http://friend.qq.com/cgi-bin/friend/oicq_find?oicq_no="&qq

content=getHTTPPage(url)

if len(content)>6360 then '如果QQ无效,做一些处理,避免错误发生.

content=replace(mid(content,instr(content,"http://img.tencent.com"),38),"""","")

qqhead="<a href='http://friend.qq.com/cgi-bin/friend/user_show_info?ln="&qq&"' target='_blank'><img src='"&content&"' title='QQ:"&qq&"' border='0'></a>"

else

qqhead=""

end if

end function

'OK了,大功告成了.现在大家只要调用就行了.

response.write qqhead(5292816)

如果QQ头像是彩色的,说明好友在线,灰的就是不在线.

%>

大家可以到http://www.okwest.net/books看看效果.呵呵.

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航