通过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(一)工厂方式 js面象对象的定义方法
Dec 15 Javascript
jquery 触发a链接点击事件解决方案
May 02 Javascript
javascript制作loading动画效果 loading效果
Jan 14 Javascript
一个非常全面的javascript URL解析函数和分段URL解析方法
Apr 12 Javascript
js实现的点击数量加一可操作数据库
May 09 Javascript
DeviceOne 让你一见钟情的App快速开发平台
Feb 17 Javascript
JS中常用的输出方式(五种)
Jun 12 Javascript
jquery实现跳到底部,回到顶部效果的简单实例(类似锚)
Jul 10 Javascript
JavaScript实现三级联动效果
Jul 15 Javascript
Vue.js递归组件构建树形菜单
Dec 24 Javascript
基于JavaScript实现抽奖系统
Jan 16 Javascript
如何开发一个渐进式Web应用程序PWA
May 10 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
星际争霸兵种名称对照表
2020/03/04 星际争霸
php Ajax乱码
2008/04/09 PHP
php 操作调试的方法
2012/07/12 PHP
Javascript 面向对象 对象(Object)
2010/05/13 Javascript
artdialog的图片/标题以及关闭按钮不显示的解决方法
2013/06/27 Javascript
NodeJS与Mysql的交互示例代码
2013/08/18 NodeJs
nodejs npm package.json中文文档
2014/09/04 NodeJs
js判断移动端是否安装某款app的多种方法
2015/12/18 Javascript
Node.js静态文件服务器改进版
2016/01/10 Javascript
JavaScript学习笔记整理_用于模式匹配的String方法
2016/09/19 Javascript
老生常谈JavaScript中的this关键字
2016/10/01 Javascript
Bootstrap基本样式学习笔记之按钮(4)
2016/12/07 Javascript
创建一般js对象的几种方式
2017/01/19 Javascript
微信小程序 Buffer缓冲区的详解
2017/07/06 Javascript
vue-cli项目如何使用vue-resource获取本地的json数据(模拟服务端返回数据)
2017/08/04 Javascript
微信小程序实现传递多个参数与事件处理
2019/08/12 Javascript
vue悬浮可拖拽悬浮按钮的实例代码
2019/08/20 Javascript
vue服务端渲染操作简单入门实例分析
2019/08/28 Javascript
jquery实现简单自动轮播图效果
2020/07/29 jQuery
利用Python绘制MySQL数据图实现数据可视化
2015/03/30 Python
浅谈python对象数据的读写权限
2016/09/12 Python
使用python和pygame绘制繁花曲线的方法
2018/02/24 Python
Python面向对象之继承和组合用法实例分析
2018/08/27 Python
Python中的heapq模块源码详析
2019/01/08 Python
Python代理IP爬虫的新手使用教程
2019/09/05 Python
Django前后端分离csrf token获取方式
2020/12/25 Python
欧舒丹加拿大官网:L’Occitane加拿大
2017/10/29 全球购物
出生医学证明样本
2014/01/17 职场文书
数控专业大学毕业生职业规划范文
2014/02/06 职场文书
《都江堰》教学反思
2014/02/07 职场文书
青春励志演讲稿
2014/04/29 职场文书
乡镇党员干部四风对照检查材料思想汇报
2014/09/27 职场文书
旷课检讨书
2015/01/26 职场文书
2015夏季作息时间调整通知
2015/04/24 职场文书
浅谈Redis的keys命令到底有多慢
2021/10/05 Redis
Mysql中@和@@符号的详细使用指南
2022/06/05 MySQL