首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
V2EX  ›  分享创造

一键清除 QQ 互联授权

  •  7
     
  •   Septembers · 153 天前 · 5784 次点击
    这是一个创建于 153 天前的主题,其中的信息可能已经有所发展或是发生改变。

    登陆 connect.qq.com 获取 uinskey 的 cookie 拷贝填充到代码

    并运行可直接清除全部的 QQ 互联授权

    #!/usr/bin/env python3
    # License: Public Domain
    import requests
    
    session = requests.session()
    session.cookies.set("uin", "your uin id from connect.qq.com cookie")
    session.cookies.set("skey", "your skey from connect.qq.com cookie")
    
    
    def fetch_auth_list(start, limit):
        response = session.get(
            "https://cgi.connect.qq.com/authmng/get_auth_app_list",
            headers={
                "Referer": "https://connect.qq.com/manage.html",
            },
            params={
                "sort": "time",
                "apptype": "all",
                "token": 5381,
                "order": "desc",
                "start": start,
                "limit": limit,
            },
        )
        return response.json()
    
    
    def delete_connect(app_id):
        response = session.post(
            "https://cgi.connect.qq.com/authmng/del_app_auth",
            headers={
                "Referer": "https://cgi.connect.qq.com/proxy.html?callback=1&id=1"
            },
            data={
                "appid": app_id,
            },
        )
        payload = response.json()
        print("AppID: %s, Message: %s" % (app_id, payload["msg"]))
    
    
    def main():
        total = fetch_auth_list(0, 0)["result"]["total"]
        app_ids = set()
        for index in range(0, total, 20):
            apps = fetch_auth_list(index, 20)["result"]["data"]
            app_ids |= set(app["appid"] for app in apps)
        for app_id in sorted(app_ids):
            delete_connect(app_id)
    
    
    if __name__ == "__main__":
        main()
    
    47 回复  |  直到 2019-04-21 19:27:45 +08:00
        1
    0312birdzhang   153 天前
    emmm,手动点了一百多下取消了三页的,早有这个就好了
        2
    Septembers   153 天前
    @0312birdzhang 我 11 页啊,才写的这个
        3
    NicholasYX   153 天前 via iPhone
    取消以后再授权还是之前的账号吗?
        4
    Bellaaa   153 天前 via Android
    谢谢!有没有微博的呢?
        5
    Septembers   153 天前
    @NicholasYX 不清楚
        6
    Septembers   153 天前
    @Bellaaa 我微博已注销
        7
    lzxgh621   153 天前 via iPhone   ♥ 1
    @NicholasYX #3 一样的
    除非网站想不开换了互联 ID
        8
    CoolkHz   153 天前
    这个咋用 在哪运行啊
        9
    bxnh   153 天前
    make
        10
    shuizhongyu10   153 天前
    @CoolkHz 你可以不运行啊 进 http://connect.qq.com/ 登录一下然后手动档~~
        11
    jookr   153 天前   ♥ 1
    谁能弄个 js 版的?
        12
    furch   153 天前
    40 页的授权全部清了
        13
    Funian   153 天前
    http://connect.qq.com/ 强制扫码登陆,🙄
        14
    glaucus   153 天前
    22 页。。。打算自己再增加一个白名单功能
        15
    Septembers   153 天前
    @glaucus 这个很简单你直接
    app_ids ^= set(app_id list)
        16
    jfdnet   153 天前
    居然必须使用 QQ 手机版才能登录,腾讯体育也是,这真的是不要逼脸。
        17
    DANG   153 天前
    感谢,这个网站头一次知道
        18
    tediorelee   153 天前
    我整整 18 页的授权,傻了
        19
    crazytree   153 天前
    去一个新浪微博的,想注销微博账号,必须取消全部授权,但是 tmd 又没有授权列表,很操蛋了
        20
    zst   153 天前 via Android
    @crazytree 发点卖粉广告吧 自带注销据说太麻烦了
        21
    jfdnet   153 天前
    Traceback (most recent call last):
    File "QQunAuth.py", line 53, in <module>
    main()
    File "QQunAuth.py", line 43, in main
    total = fetch_auth_list(0, 0)["result"]["total"]
    TypeError: list indices must be integers or slices, not str
        22
    outtime   153 天前
    32 页的我。。。
    感谢楼主!
        23
    boom7   153 天前
    hhh 前些天准备注销多余 qq 帐号的时候也写了一个
        24
    Septembers   153 天前
    @jfdnet 你需要修改 cookie 设置
        25
    wozhihuipinyin   153 天前 via Android
    先谢谢楼主写了这么好的工具,不知道楼主能不能再详细介绍下使用方法–没有编程基础真的是无处下手呀😂
        26
    kumiko   153 天前
    @wozhihuipinyin #25
    chrome f12 - Application - Cookies 看自己的 uin 和 skey
    "your uin id from connect.qq.com cookie","your skey from connect.qq.com cookie" 替换双引号里的内容
    保存后运行这个 py 文件
        27
    luruitao   153 天前
    想问问为啥要取消这个授权?
        28
    xiangchen2011   153 天前
    不太会用 哎
        29
    sdushn   153 天前
    四页,手动清了下,看到了开心网,
        30
    xiangchen2011   153 天前
    可以可以,弄会了
        31
    dd0754   153 天前
    5 页...感谢楼主
        32
    du5t6reak   153 天前 via iPhone
    必须手动赞一个
        33
    luruitao   153 天前   ♥ 3
    抛砖引玉,写了个 js 模拟点击的脚本,直接粘贴到控制台就能使,不过得一页一页来,有兴趣的大佬可以继续完善完善。
    ```js
    let list = [];
    for (let i = 0; i < 10; i++) {
    list.push(() => {
    $(`#content > div > div.listContent > ul > li:nth-child(${i + 1}) > div.appAuthManager > a > span`).click();
    setTimeout(() => {
    $('#content > div > div.auth_pop_wrap > div > div.msgContent > a')[0].click();
    list[i + 1] && list[i + 1]();
    }, 1000);
    });
    }
    list[0]();
    ```
        34
    rolexman   153 天前
    怎么运行代码,小白路过
        35
    asdfa   153 天前
    6 页 感谢楼主
        36
    KennySun   153 天前
    28 页...
        37
    KennySun   153 天前
    感谢楼主
        38
    easylee   153 天前
    感谢提供,我觉得可以直接放上 Github 了。
        39
    DigitaIOcean   153 天前
    额…… 为啥要清掉……
        40
    cnzzz   153 天前
    感谢,两页
        41
    twitch   153 天前 via Android
    感谢楼主分享
        42
    natforum   152 天前
    刚刚翻了下看到一个这个
        43
    brucmao   152 天前
    替换了自己的 uin 和 skey 运行出错
        44
    Septembers   151 天前
    @brucmao 可能你的 uin / skey 设置错了
        45
    wymeteor   149 天前
    @NicholasYX 是的,实际上这个只是清理 QQ 授权显示而已,实际账户数据还在第三方手上,
        46
    brucmao   149 天前
    @Septembers 可以了,改成这样
    ession.cookies.set("p_uin", "your uin id from connect.qq.com cookie")
    session.cookies.set("p_skey", "your skey from connect.qq.com cookie")
        47
    napsterwu   147 天前
    @brucmao
    '{"retcode":100000,"msg":"login error [errcode:100000:0]","result":[]}'
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   1307 人在线   最高记录 5043   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 23ms · UTC 23:57 · PVG 07:57 · LAX 16:57 · JFK 19:57
    ♥ Do have faith in what you're doing.