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


Posted in Javascript onJanuary 22, 2007

不知道大家对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看看效果.呵呵.

Javascript 相关文章推荐
jquery 单击li防止重复加载的实现代码
Dec 24 Javascript
单击浏览器右上角的X关闭窗口弹出提示的小例子
Jun 12 Javascript
jQuery前端框架easyui使用Dialog时bug处理
Dec 05 Javascript
使用JS中的exec()方法构造正则表达式验证
Aug 01 Javascript
JavaScript兼容浏览器FF/IE技巧
Aug 14 Javascript
深入理解JavaScript创建对象的多种方式以及优缺点
Jun 01 Javascript
Angular 4依赖注入学习教程之ClassProvider的使用(三)
Jun 04 Javascript
基于JavaScript实现选项卡效果
Jul 21 Javascript
分享5个小技巧让你写出更好的 JavaScript 条件语句
Oct 20 Javascript
js实现自动播放匀速轮播图
Feb 06 Javascript
详解ES6实现类的私有变量的几种写法
Feb 10 Javascript
vue组件的路由高亮问题解决方法
May 11 Vue.js
Javascript技术技巧大全(五)
Jan 22 #Javascript
深入认识JavaScript中的函数
Jan 22 #Javascript
Ajax::prototype 源码解读
Jan 22 #Javascript
showModalDialog 和 showModelessDialog
Jan 22 #Javascript
javascript 中对象的继承〔转贴〕
Jan 22 #Javascript
利用javascript中的call实现继承
Jan 22 #Javascript
Javascript里使用Dom操作Xml
Jan 22 #Javascript
You might like
dedecms防止FCK乱格式化你的代码的修改方法
2007/03/17 PHP
Warning: session_destroy() : Trying to destroy uninitialized sessionq错误
2011/06/16 PHP
php设计模式  Command(命令模式)
2011/06/17 PHP
浅析PHP中的UNICODE 编码与解码
2013/06/29 PHP
php使用pdo连接并查询sql数据库的方法
2014/12/24 PHP
PHP序列化的四种实现方法与横向对比
2018/11/29 PHP
PHP使用ajax的post方式下载excel文件简单示例
2019/08/06 PHP
Javascript 学习书 推荐
2009/06/13 Javascript
浅析JavaScript中的隐式类型转换
2013/12/05 Javascript
js使用心得分享
2015/01/13 Javascript
javascript获取重复次数最多的字符
2015/07/08 Javascript
jQuery中$.ajax()和$.getJson()同步处理详解
2015/08/12 Javascript
浅析JS运动
2015/12/28 Javascript
jQuery实现可以控制图片旋转角度效果(附demo源码下载)
2016/01/27 Javascript
javascript+HTML5自定义元素播放焦点图动画
2016/02/21 Javascript
jQuery ajax请求返回list数据动态生成input标签,并把list数据赋值到input标签
2016/03/29 Javascript
Javascript实现前端简单的路由实例
2016/09/11 Javascript
AngularJS自定义服务与fliter的混合使用
2016/11/24 Javascript
JS产生随机数的用法小结
2016/12/10 Javascript
Javascript实现base64的加密解密方法示例
2017/06/27 Javascript
如何在Vue.js中实现标签页组件详解
2019/01/02 Javascript
Python使用random和tertools模块解一些经典概率问题
2015/01/28 Python
Python微信库:itchat的用法详解
2017/08/14 Python
python如何制作英文字典
2019/06/25 Python
对python中UDP,socket的使用详解
2019/08/22 Python
关于torch.optim的灵活使用详解(包括重写SGD,加上L1正则)
2020/02/20 Python
python两种获取剪贴板内容的方法
2020/11/06 Python
Python3+Appium安装及Appium模拟微信登录方法详解
2021/02/16 Python
input元素的url类型和email类型简介
2012/07/11 HTML / CSS
英国现代、当代和设计师家具店:Furntastic
2020/07/18 全球购物
ASP.NET中的身份验证有那些
2012/07/13 面试题
师范学院美术系毕业生自我鉴定
2014/01/29 职场文书
煤矿安全承诺书
2014/05/22 职场文书
胡雪岩故居导游词
2015/02/06 职场文书
初中生活随笔
2015/08/15 职场文书
七年级之开学家长寄语35句
2019/09/05 职场文书