yzc27
V2EX  ›  问与答

QQ 好友在线状态 API 的问题

  •  
  •   yzc27 · Jun 13, 2017 · 3967 views
    This topic created in 3339 days ago, the information mentioned may be changed or developed.

    我最近想用 python 来监控 QQ 好友的在线状态的变化情况,比如上线了就发邮件,离开了也发邮件。。。

    但问题来了,我找了很久,也没有相关的 API 可以返回 QQ 好友的在线状态,请问各位大佬能指教一下吗?

    Supplement 1  ·  Jun 15, 2017
    最基本要求是能区分“在线”,“离线”,“离开”这三种状态就行了。当然假如能区分到究竟是手机在线还是电脑在线则更棒!
    24 replies    2019-03-16 18:21:58 +08:00
    4396NeverBeSlave
        1
    4396NeverBeSlave  
       Jun 13, 2017
    有个网页版的 qq 可以试试,还有手机 3gqq,不知道还能用不了
    iyangyuan
        2
    iyangyuan  
       Jun 13, 2017
    api 简单,cookie 比较难处理
    fstab
        3
    fstab  
       Jun 13, 2017 via Android
    隐身这个算离线?
    yzc27
        4
    yzc27  
    OP
       Jun 13, 2017 via iPhone
    @flyz 可以算 l 离线
    yzc27
        5
    yzc27  
    OP
       Jun 13, 2017 via iPhone
    @iyangyuan 求可用 api !
    kylinking
        6
    kylinking  
       Jun 13, 2017 via iPhone
    写过一 QQ 空间爬虫,获取好友信息的时候可以获取到登录状态。
    changwei
        7
    changwei  
       Jun 13, 2017 via Android
    之前 github 上见过一个高科技,安卓模拟器定时截图加 ocr 识别聊天窗口顶上的在线状态,而且好像就是 V2EX 的人发的
    akaayy
        8
    akaayy  
       Jun 13, 2017 via Android
    现在还有人研究这个啊………
    已经没意义了吧
    yzc27
        9
    yzc27  
    OP
       Jun 13, 2017 via iPhone
    @akaayy 的确不太主流,但还是有业务需要
    yzc27
        10
    yzc27  
    OP
       Jun 13, 2017 via iPhone
    @changwei 哈哈哈那个我知道,不过我的脚本主要在 linux 上跑,为了个这个还特意装个模拟器装安卓,这样效率堪忧啊
    yzc27
        11
    yzc27  
    OP
       Jun 13, 2017 via iPhone
    @kylinking 能借来参考一下吗?
    kylinking
        12
    kylinking  
       Jun 13, 2017 via iPhone
    yzc27
        13
    yzc27  
    OP
       Jun 13, 2017 via iPhone
    @kylinking 感激不尽!!!有空我研究一下看看这个 api 还有没有效
    duan602728596
        14
    duan602728596  
       Jun 13, 2017 via iPhone
    这个其实是可以的,用的是 smartQQ 的端口。我之前写过监控的机器人,群里发指定消息,就返回指定的信息。
    yzc27
        15
    yzc27  
    OP
       Jun 13, 2017 via iPhone
    @duan602728596 但是我只是想知道某个 qq 好友目前的在线状态而已,有这方面的 api 吗?
    lany
        16
    lany  
       Jun 14, 2017 via Android
    先写一个登录,然后利用 http://find.qq.com/ 抓包网址,抓取 "stat" 后面数值是 1 就是在线
    yzc27
        17
    yzc27  
    OP
       Jun 14, 2017 via iPhone
    @lany 原来还有这个页面,我去尝试一下
    jy02201949
        18
    jy02201949  
       Jun 14, 2017
    网上 QQ bot 好像都能完成这个功能吧,都是通过抓网页版 QQ 完成的
    duan602728596
        19
    duan602728596  
       Jun 14, 2017
    http://www.scienjus.com/webqq-analysis-1/
    你看看这个吧,现在很多 qq 机器人都是基于网页版 QQ 即 smartQQ 的协议来写的。
    无论是好友状态,还是群状态,都是用 uin 获取的,uin !== 群号或者 QQ 号,还要通过 uin 查找详细信息。接口真的很麻烦
    yzc27
        20
    yzc27  
    OP
       Jun 14, 2017
    @duan602728596
    是的是的,我之前有研究过、用过这个接口
    http://d1.web2.qq.com/channel/get_online_buddies2?vfwebqq=\#{vfwebqq}&clientid=53999199&psessionid=\#{psessionid}&t=0.1
    但企鹅太恶心了,api 经常变动,现在这个 api 不再返回在线好友了,所以我才上来问的
    duan602728596
        21
    duan602728596  
       Jun 14, 2017 via iPhone
    @yzc27 只能根据 uin 多次查询了
    yzc27
        22
    yzc27  
    OP
       Jun 15, 2017
    最基本要求是能区分“在线”,“离线”,“离开”这三种状态就行了。当然假如能区分到究竟是手机在线还是电脑在线则更棒!
    上面各位仁兄提到的接口,貌似只能提供在线和离线两种状态,没有“离开”这种状态。
    chowkim
        23
    chowkim  
       Mar 16, 2019
    现在查在线用哪个接口比较好呀?
    yzc27
        24
    yzc27  
    OP
       Mar 16, 2019 via iPad
    @chowkim 没了。鹅厂连 webQQ 都关了,更难获得了现在。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   5769 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 99ms · UTC 02:37 · PVG 10:37 · LAX 19:37 · JFK 22:37
    ♥ Do have faith in what you're doing.