通过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 相关文章推荐
Javascript与vbscript数据共享
Jan 09 Javascript
40个有创意的jQuery图片和内容滑动及弹出插件收藏集之三
Jan 03 Javascript
基于jquery &amp; json的省市区联动代码
Jun 26 Javascript
轻松学习jQuery插件EasyUI EasyUI实现树形网络基本操作(2)
Nov 30 Javascript
AngularJS延迟加载html template
Jul 27 Javascript
jquery ajax后台返回list,前台用jquery遍历list的实现
Oct 30 Javascript
js实现九宫格的随机颜色跳转
Feb 19 Javascript
Vue filters过滤器的使用方法
Jul 14 Javascript
JavaScript异步加载问题总结
Feb 17 Javascript
JavaScript使用递归和循环实现阶乘的实例代码
Aug 28 Javascript
实例详解带参数的 npm script
May 28 Javascript
javaScript 实现重复输出给定的字符串的常用方法小结
Feb 20 Javascript
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
全国FM电台频率大全 - 24 贵州省
2020/03/11 无线电
PHP安全配置
2006/12/06 PHP
PHP+MYSQL会员系统的登陆即权限判断实现代码
2011/09/23 PHP
php配置php-fpm启动参数及配置详解
2013/11/04 PHP
PHP的switch判断语句的“高级”用法详解
2014/10/01 PHP
解决php extension 加载顺序问题
2019/08/16 PHP
thinkPHP5框架路由常用知识点汇总
2019/09/15 PHP
Javascript拓展String方法小结
2013/07/08 Javascript
document节点对象的获取方式示例介绍
2013/12/24 Javascript
jquery 字符串切割函数substring的用法说明
2014/02/11 Javascript
JS显示表格内指定行html代码的方法
2015/03/31 Javascript
浅谈javascript中的闭包
2015/05/13 Javascript
JS判断元素是否在数组内的实现代码
2016/03/30 Javascript
再次谈论React.js实现原生js拖拽效果引起的一系列问题
2016/04/03 Javascript
jQuery 获取屏幕高度、宽度的简单实现案例
2016/05/17 Javascript
Bootstrap轮播插件简单使用方法介绍
2016/06/21 Javascript
基于Vue2的移动端开发环境搭建详解
2016/11/03 Javascript
AngularJS动态菜单操作指令
2017/04/25 Javascript
Bootstrap table表格初始化表格数据的方法
2018/07/25 Javascript
python中列表元素连接方法join用法实例
2015/04/07 Python
Python修改文件往指定行插入内容的实例
2019/01/30 Python
python 利用pywifi模块实现连接网络破解wifi密码实时监控网络
2019/09/16 Python
用python拟合等角螺线的实现示例
2019/12/27 Python
python3中datetime库,time库以及pandas中的时间函数区别与详解
2020/04/16 Python
关于HTML5的22个初级技巧(图文教程)
2012/06/21 HTML / CSS
Bulk Powders意大利:运动补充在线商店
2019/02/09 全球购物
外企C语言笔试题
2013/11/10 面试题
幼儿运动会邀请函
2014/01/17 职场文书
六五普法规划实施方案
2014/03/21 职场文书
质量保证书范本
2014/04/29 职场文书
计算机系统管理员求职信
2014/06/20 职场文书
人事专员岗位职责说明书
2014/07/30 职场文书
2014年劳动部工作总结
2014/12/11 职场文书
大学生奖学金获奖感言(范文)
2019/08/15 职场文书
读《钢铁是怎样炼成的》有感:百炼方成钢
2019/11/05 职场文书
详解JVM系列之内存模型
2021/06/10 Javascript