通过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 autocomplate 自扩展插件、自动完成示例代码
Mar 28 Javascript
ExtJS自定义主题(theme)样式详解
Nov 18 Javascript
用js+iframe形成页面的一种遮罩效果的具体实现
Dec 31 Javascript
JavaScript对象属性检查、增加、删除、访问操作实例
Jul 08 Javascript
简单讲解AngularJS的Routing路由的定义与使用
Mar 05 Javascript
JavaScript数据推送Comet技术详解
Apr 07 Javascript
使用JQuery选择HTML遍历函数的方法
Sep 17 Javascript
angularJS+requireJS实现controller及directive的按需加载示例
Feb 20 Javascript
JavaScript onclick事件使用方法详解
May 15 Javascript
vuejs element table 表格添加行,修改,单独删除行,批量删除行操作
Jul 18 Javascript
JavaScript事件委托实现原理及优点进行
Aug 29 Javascript
介绍一下28个JS常用数组方法
May 06 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
用PHP创建PDF中文文档
2006/10/09 PHP
mysql 性能的检查和优化方法
2009/06/21 PHP
处理单名多值表单的详解
2013/06/08 PHP
php文档工具PHP Documentor安装与使用方法
2016/01/25 PHP
php轻松实现文件上传功能
2016/03/03 PHP
php面向对象之反射功能与用法分析
2017/03/29 PHP
PHP面向对象程序设计之多态性的应用示例
2018/12/19 PHP
php文件上传原理与实现方法详解
2019/12/20 PHP
神奇的7个jQuery 3D插件整理
2011/01/06 Javascript
JS this作用域以及GET传输值过长的问题解决方法
2013/08/06 Javascript
JavaScript基础知识学习笔记
2014/12/02 Javascript
如何解决手机浏览器页面点击不跳转浏览器双击放大网页
2016/07/01 Javascript
jQuery插件之validation插件
2017/03/29 jQuery
socket io与vue-cli的结合使用的示例代码
2018/11/01 Javascript
「中高级前端面试」JavaScript手写代码无敌秘籍(推荐)
2019/04/08 Javascript
vue 项目 iOS WKWebView 加载
2019/04/17 Javascript
OpenLayers3实现图层控件功能
2020/09/25 Javascript
[01:34]2016国际邀请赛中国区预选赛IG战队教练采访
2016/06/27 DOTA
python登陆asp网站页面的实现代码
2015/01/14 Python
Python3指定路径寻找符合匹配模式文件
2015/05/22 Python
Python面向对象编程基础解析(一)
2017/10/26 Python
用Python中的turtle模块画图两只小羊方法
2019/04/09 Python
Python任意字符串转16, 32, 64进制的方法
2019/06/12 Python
python 随机森林算法及其优化详解
2019/07/11 Python
python GUI库图形界面开发之PyQt5访问系统剪切板QClipboard类详细使用方法与实例
2020/02/27 Python
python实现数字炸弹游戏程序
2020/07/17 Python
animation和transition的区别
2020/10/12 HTML / CSS
越南电子产品购物网站:FPT Shop
2017/12/02 全球购物
美国开幕式潮店:Opening Ceremony
2018/02/10 全球购物
送给他或她的礼物:FUN.com
2018/08/17 全球购物
英国排名第一的餐具品牌:Denby Pottery
2019/11/01 全球购物
应届毕业生如何写求职信
2014/02/16 职场文书
大学生会计职业生涯规划范文
2014/02/28 职场文书
农村婚庆司仪主持词
2014/03/15 职场文书
幼儿园家长寄语
2014/04/02 职场文书
廉洁自律证明
2015/06/24 职场文书