关于WEB程序获取QQ好友的解决方案

现在各SNS网站纷至沓来,基本上都会提供邀请常用IM好友的功能,比如说邀请QQ好友加入。
做为技术研究,我想获取QQ好友的办法无非几种

1,直接读他们的数据库,前提是跟人家谈好了,不过好像这种不太现实
2,通过监视程序跟踪客户端软件,得熟悉C++钩子程序,对于WEB程序员来说难度较大,反正我不会
3,修改开源的QQ客户端程序,把获取好友部分修改,供自己使用
4,模拟QQ邮箱登录,取它的所有联系人的列表,一样可以取得QQ帐号的好友列表
如果您还有别的办法可以提出来,感谢。

对于第3种方法现在网上流传的开源QQ客户端程序有lumaqq(java版最新为2006,已经停止开发),lumaqq.net(C#版的,园子里有),还有个基于gtkmm用C++写的QQ客户端,没找到下载,看来可以用的只有lumaqq.net版的了,经过测试这个程序有时候是可以正常取到QQ好友的,可出错的时候也不少,基本上是“正在高峰期,请不要登录多个客户端”。

第4种,大家都是搞这个的,对WEB还是比较熟悉,把QQ的登录页面整个复制到自己的页面,显示出来效果跟QQ的邮箱登录是一样的,输入帐号,密码,验证码也可以正常的显示出来,在这里,如果用的不是QQ数字帐号不会显示验证码的。输入验证码,点登录,会提示验证码失败。经过分析,QQ的页面中有个TS的隐藏域,这个值每刷新一次页面会有一个新的值,这个值和密码域的值加起来进行RSA加密,然后赋值到另一个隐藏域P中,然后提交表单。至于这个TS值和验证码间有什么关系就不知道了,如果有腾讯的人在麻烦指点一下啊:),试验了多次还是没能登录,失败。

上面是我总结的一点个人经验,请大家指正

posted on 2008-07-30 16:29  似水之心  阅读(15727)  评论(32编辑  收藏  举报

导航