wstlwl 发表于 2017-3-27 12:39:23

PHP导出QQ好友

  从昨天晚上开始搞,搞了一个通宵,终于搞定。
  昨晚,想了一下我们游戏如果能够通过QQ好友进行推广,是不是可以省去不少广告费那?
  先不管这么多,自己到网上搜索了一下腾讯的协议,基本上都是1年前的老帖子了
  大部分都已经失效,不能用了,腾讯的协议修改太快了。
  但是网上我发现有人用QQ邮箱导出联系人的方法,这个方法不错,但是有个小弊端,如果我没有开通QQ邮箱的话,就不能导出好友列表了。
  所以,我想到了用web.qq.com登录导出好友,参考了网上那位导出QQ邮箱里面联系人的方法,搞定了web.qq.com的登录。
  后面遇到了不少坎,web.qq.com上面获取好友列表还是比较麻烦的,还要先登录web-proxy.qq.com服务器,然后再发送那些特殊的指令来获取好友列表,但是不知道为什么PHP的curl,只能执行到登陆web-proxy.qq.com,再发送一个获取好友列表的命令就一直卡住不动。
  眼看马上就要成功了,竟然被这个玩意卡住了,郁闷死我了,我认为web.qq.com是使用的长连接,可能会对我的结果造成阻塞,我就搞QQ空间去了,找到了比较完美的方法获取好友列表,但是,麻烦又出现了。
  又是卡住的问题,登录完之后,直接执行获取列表,就会卡死,郁闷的已经不行了,都快凌晨4点了,实在郁闷。
  老子就不信这个邪,我又换了一种方式,不用curl了,拿fsockopen测试了一下,发现没有卡住的现象,curl这个破东西不管怎么设置都不行,我决定用fsockopen这个函数了,终于把函数封装好了,问题又来了。
  登录之后取不到Cookie,腾讯的服务器提示我服务器繁忙,郁闷郁闷实在郁闷,又复习了一遍HTTP协议,然后下载了个http的抓包工具,仔细看了看浏览器到底怎么提交的,我缺少了什么,终于有收获了,原来我把Cookie的位置弄错了,Cookie必须写在下面。
  所有的问题都一一解决,把程序修改好,试了一下,哇哈哈,搞定,很爽!
  这个程序比起原先用邮箱联系人的方法要好一些,只要这个人开通了QQ空间,就可以导出好友。
  也不会提示您的QQ已在其他地方登陆,web.qq.com登录的话会提示您在其他地方登陆,这个比较恶心。
  测试地址:http://test.jzwar.cn/webqq/
  【友情链接:云枫文学 - 一个PHP写的小说搜索引擎
  有不少人找我要代码,现在我就把代码贴一下截图,自己敲代码,自己研究吧!
  http://hiphotos.baidu.com/lukin/pic/item/4876a21e3412af334034178f.jpg
http://hiphotos.baidu.com/lukin/pic/item/382e532c031cfbc08b139989.jpg
http://hiphotos.baidu.com/lukin/pic/item/f79051fb923f113a6c22eb8a.jpg
http://hiphotos.baidu.com/lukin/pic/item/1304d32a5a9c7701d52af18b.jpg
http://hiphotos.baidu.com/lukin/pic/item/989bd416c1e1f934962b438b.jpg
http://hiphotos.baidu.com/lukin/pic/item/1f9f8135971bb53d91ef3994.jpg

页: [1]
查看完整版本: PHP导出QQ好友