通过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 For Beginners(转载)
Jan 05 Javascript
Ajax::prototype 源码解读
Jan 22 Javascript
javascript smipleChart 简单图标类
Jan 12 Javascript
jquery ajax return没有返回值的解决方法
Oct 20 Javascript
对于this和$(this)的个人理解
Sep 08 Javascript
node.js中使用socket.io制作命名空间
Dec 15 Javascript
微信小程序 wx.uploadFile无法上传解决办法
Dec 14 Javascript
JavaScript正则替换HTML标签功能示例
Mar 02 Javascript
如何快速解决JS或Jquery ajax异步跨域的问题
Jan 08 jQuery
JavaScript解析机制与闭包原理实例详解
Mar 08 Javascript
Js通过AES加密后PHP用Openssl解密的方法
Jul 12 Javascript
如何配置vue.config.js 处理static文件夹下的静态文件
Jun 19 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的面试题集,附我的答案和分析(一)
2006/11/19 PHP
PHP的可变变量名的使用方法分享
2012/02/05 PHP
Zend Studio去除编辑器的语法警告设置方法
2012/10/24 PHP
php抓取页面的几种方法详解
2013/06/17 PHP
WordPress中is_singular()函数简介
2015/02/05 PHP
smarty学习笔记之常见代码段用法总结
2016/03/19 PHP
JavaScript 封装Ajax传递的数据代码
2009/06/05 Javascript
js 禁用只读文本框获得焦点时的退格键
2010/04/25 Javascript
Javascript模块化编程(一)AMD规范(规范使用模块)
2013/01/17 Javascript
JS模拟实现Select效果代码
2015/09/24 Javascript
js实现select二级联动下拉菜单
2020/04/17 Javascript
浅谈jQuery为哪般去掉了浏览器检测
2016/08/29 Javascript
Django+Vue.js搭建前后端分离项目的示例
2017/08/07 Javascript
jquery自定义显示消息数量
2017/12/19 jQuery
以v-model与promise两种方式实现vue弹窗组件
2018/05/21 Javascript
微信小程序WebSocket实现聊天对话功能
2018/07/06 Javascript
vue调用微信JSDK 扫一扫,相册等需要注意的事项
2021/01/03 Vue.js
Python实现的视频播放器功能完整示例
2018/02/01 Python
python:pandas合并csv文件的方法(图书数据集成)
2018/04/12 Python
解读python logging模块的使用方法
2018/04/17 Python
Python中typing模块与类型注解的使用方法
2019/08/05 Python
10行Python代码计算汽车数量的实现方法
2019/10/23 Python
原来我一直安装 Python 库的姿势都不对呀
2019/11/11 Python
Python正则表达式急速入门(小结)
2019/12/16 Python
Python collections.defaultdict模块用法详解
2020/06/18 Python
python中的django是做什么的
2020/07/31 Python
关于多种方式完美解决Python pip命令下载第三方库的问题
2020/12/21 Python
部门活动策划方案
2014/08/16 职场文书
2014年人大工作总结
2014/12/10 职场文书
失恋33天观后感
2015/06/11 职场文书
小学大队干部竞选稿
2015/11/20 职场文书
小学作文之描写天气
2019/08/15 职场文书
python 自动化偷懒的四个实用操作
2021/04/11 Python
Python基础之操作MySQL数据库
2021/05/06 Python
天谕手游15杯全调酒配方和调酒券的获得方式
2022/04/06 其他游戏
vue实现列表拖拽排序的示例代码
2022/04/08 Vue.js