原文地址:http://www.piaoyi.org/network/get-qq-haoma-js.html

正 文:

最近,飘易收到不少在线获取网站访客QQ号码的促销推广邮件,有不少商用网站挖掘了这个需求,推出了一些商用程序。那么这些商用程序是如何获取访客qq号码的呢?他们用的是什么技术?    飘易今天就来和大家分享下如何在线获取访客qq号码的方法。    首先,一句话说明,无论哪种方式,需要你精通js代码。    目前市面上,获取qq号码无外乎以下几种方法:1、开通qq空间黄钻,在目标网页嵌入隐藏的iframe框架,利用QQ空间被挡访客的功能,查看qq号码;
2、本地软件开发,比如利用c#嵌入一个webbrowser空间,然后分析html源码,获取页面中的qq号码(此方法没有实战意义,对网页登录没价值,不讨论)
3、通过js跨域,利用腾讯众多的登录接口或功能页面来读取用户的qq号码;
4、用PHP file_get_contents获取腾讯某一页面内容进行截取QQ号码,此方法2013年前可用,目前失效。    上面这些方法都不一定能获取到访客的qq号码,前提是:
    该访客曾经在浏览器里登录过qq空间、腾讯微博、qq邮箱、朋友网等这些腾讯系的产品,然后浏览器留下了他的cookies信息,这样的前提下,才能获取到访客qq。    先说说利用qq空间黄钻功能查看访客qq空间的原理
    利用js或iframe的方式在目标网页载入这个url: http://user.qzone.qq.com/12345678,其中12345678是开通qq黄钻的qq号码。    先把QQ开通了黄砖,然后把QQ空间访问权限关闭即可。当访客访问网站时,在空间被挡访客中就可以看到访客QQ了。    下面飘易重点来说说利用js跨域来获取访客qq的方法。    一般情况下,我们是无法跨域获取用户电脑上的cookie信息的,比如 我的网页是 http://www.piaoyi.org/,那么我能获取到www.qq.com 下的用户cookie么?答案是当然不能,cookie是不能跨域获取的!     那么,我们如何得到用户qq号呢?  那就是找到一些 qq.com 下本域名下的页面,利用他们的页面作为跳板,通过script的方式调用远程qq页面,然后通过回调函数,提取qq号码。    比如:

<script>
    function piaoyi(obj){
        if(obj.uin != 0){
            alert("获取到QQ:"+obj.uin);
        }else{
            alert("未获取到QQ");
        }
    }
</script>
<script src="http://zf.huanle.qq.com/cgi-bin/hlddz_box/hlddz_silver_to_gold_box?callback=piaoyi"></script>

红色的网址页面就是qq.com域名自身下的页面,这个页面当然可以获取qq登录后的cookies信息,因此,就很轻易获取到访客qq了。    如果你直接访问 http://zf.huanle.qq.com/cgi-bin/hlddz_box/hlddz_silver_to_gold_box?callback=piaoyi,返回的结果如以下格式:

piaoyi({"result":1000005,"resultstr":"系统繁忙!","uin":123456})

其中uin的值就是访客的qq号。
    像上面的这个红色网址,就是我们要找的页面,必须通过qq.com自身域名下的页面作为一个跳板。至于js跨域,我们还可以利用jQuery 的 jsonp的方式 实现跨域,具体的可以看这个链接。    像上面的这个页面地址还有以下这些:
http://zf.huanle.qq.com/cgi-bin/hlddz_box/hlddz_open_box?callback=piaoyi
http://zf.huanle.qq.com/cgi-bin/hlddz_box/hlddz_silver_to_gold_box?callback=piaoyi
http://dir.minigame.qq.com/cgi-bin/yxs/GetYxsRegTime?callback=piaoyi
http://apps.qq.com/app/yx/cgi-bin/show_fel?hc=8&lc=4&d=365633133   注意:以上公布的这些网址已经被腾讯封了。   今天这篇文章的思路,仅供参考,如果您有更多的关于如何获取访客qq号码的方法,可以在下面留下您的评论。

在线获取访客QQ号码的原理及实现方法的更多相关文章

  1. 自动获取访客QQ

    http://jerring.cn/bizqq/index.html http://www.oicqzone.com/qqjiqiao/2015072322139.html

  2. PHP获取访客ip、系统、浏览器等信息[转]

    1.获取访客操作系统信息   <?php   function GetOs() {   if (!empty($_SERVER['HTTP_USER_AGENT'])) {   $OS = $_ ...

  3. 获取访客IP、地区位置信息、浏览器、来源页面

    <?php //这个类似用来获取访客信息的 //方便统计 class visitorInfo { //获取访客ip public function getIp() { $ip=false; if ...

  4. PHP获取访客IP、地区位置信息、浏览器、来源页面

    不多说了,每个方法都注释了,可以直接用: <?php //这个类似用来获取访客信息的 //方便统计 class visitorInfo { //获取访客ip public function ge ...

  5. 安装mod_rpaf让apache获取访客真实IP

    安装mod_rpaf让apache获取访客真实IP 安装mod_rpaf让apache获取访客真实IP 作者:朱 茂海 /分类:Apache  字号:L M S     mod_rpaf是apache ...

  6. 利用PHP获取访客IP、地区位置、浏览器及来源页面等信息

    这篇文章主要介绍了利用PHP获取访客IP.地区位置.浏览器及来源页面等信息的相关资料,文中给出了详细的示例代码供大家参考学习,对大家具有一定的参考借鉴价值,需要的朋友们下面来一起看看吧. 前言 本文中 ...

  7. .NetCore.RazorPages 获取访客的公网IP与局域网IP

    dotnet.core 获取访客的公网IP与局域网IP 现在奉上代码 public void OnGet() {var ip = Content(HttpContext.Connection.Remo ...

  8. JS获取访客IP+判断归属地+自动跳转

    由于公司业务需要,需要对网站特定地区的访客进行不同跳转.比如,上海的用户跳转到“shanghai.url.cn”,南京的用户跳转到“nanjing.url.cn”.下面就是我的实现方法,分享出来,顺便 ...

  9. JS获取访客IP进行自动跳转

    因业务需要进行地区判断跳转指定站点,下面是我个人实现的办法,分享给大家,仅供参考,切勿做非法用途 第一步,获取IP并判断归属地 直接使用搜狐的IP库查询接口 <script type=" ...

随机推荐

  1. Linux远程桌面

    发现windows下有个VNC viewer.据说是跨平台的. sudo apt-cache search VNC | grep VNC了一下.发现有一个gvncviewer的包,然后apt-get ...

  2. java设计模式--行为型模式--备忘录模式

    备忘录模式,我们平常所做的备忘录么.还得深深研究哦. 备忘录模式: 备忘录模式 概述 在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态.这样以后就可将该对象恢复到原先保存的状 ...

  3. pragma pack(非常有用的字节对齐用法说明)

    强调一点: #pragma pack(4) typedef struct { char buf[3]; word a; }kk; #pragma pack() 对齐的原则是min(sizeof(wor ...

  4. 什么是优先级队列(priority queue)?

    有时候我们需要在某个元素集合中找到最小值和最大值 .优先级队列抽象数据(Priority Queue ADT)模型是我们能够使用的方法之一,这是一种支持插入和删除最小值(DeleteMin)或者最大值 ...

  5. 使用ObjectInputStream的readObject()方法如何判断读取到多个对象的结尾

    摘自http://blog.csdn.net/fjdingsd/article/details/46765803 使用ObjectInputStream的readObject()方法如何判断读取到多个 ...

  6. 【转】android 电池(三):android电池系统

    关键词:android电池系统电池系统架构 uevent power_supply驱动 平台信息: 内核:linux2.6/linux3.0系统:android/android4.0 平台:S5PV3 ...

  7. Unity 角色复活和重新开始游戏

    作者写游戏完成的时候,还需要从新想下如何把游戏设置重新开始,角色如何复活. 一般大多数都会采用这种方式来代替游戏重新开始 Application.LoadLevel("xxx场景" ...

  8. where 1=1

    sql: where 1=1 1=1 永真, 1<>1 永假. 1<>1 的用处: 用于只取结构不取数据的场合 例如: 拷贝表 create   table_name   as ...

  9. Can you find it?(二分 二分+STL set map)

    Can you find it? Time Limit : 10000/3000ms (Java/Other)   Memory Limit : 32768/10000K (Java/Other) T ...

  10. cc1plus: fatal error: emeralddb-pmdMain.d: No such file or directory

    签名autoscan, aclocal, config啥的都没错,最后make 报下面的错,查了各个文件没发现有啥问题,请哪位帮忙卡看 make[1]: Entering directory `/ro ...