跳转到主内容
新派编程网 - 新潮编程理念,全新技术课堂!

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

不知道大家对MSXML2.XMLHTTP是不是很熟悉,不过它的功能可以说是达到了极点.你可以通过它把别人的网站都"搬回来",呵呵,吹牛啦!!今天我就用它从腾讯网站获取一个QQ号码的头像,在线情况(人家隐身了我也没办法).当然大家也可以获取QQ的昵称,所在地等.具体实现方法如下:先建立两个函数,用来处理一个URL复制代码代码如下:function getHTTPPage(url) dim http set http=createobject("MSXML2.XMLHTTP") Http.open "GET",url,false Http.send() if Http.readystate4 then exit function end if getHTTPPage=bytes2BSTR(Http.responseBody) set http=nothing if err.number0 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 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=""else qqhead=""end if end function'OK了,大功告成了.现在大家只要调用就行了.

response.write qqhead(5292816)如果QQ头像是彩色的,说明好友在线,灰的就是不在线.

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

相关文章