登陆 https://connect.qq.com 获取 uin 和 skey 的 cookie 拷贝填充到代码。

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

  1. #!/usr/bin/env python3
  2. # License: Public Domain
  3. import requests
  4. session = requests.session()
  5. session.cookies.set("uin", "your uin id from connect.qq.com cookie")
  6. session.cookies.set("skey", "your skey from connect.qq.com cookie")
  7. def fetch_auth_list(start, limit):
  8. response = session.get(
  9. "https://cgi.connect.qq.com/authmng/get_auth_app_list",
  10. headers={
  11. "Referer": "https://connect.qq.com/manage.html",
  12. },
  13. params={
  14. "sort": "time",
  15. "apptype": "all",
  16. "token": 5381,
  17. "order": "desc",
  18. "start": start,
  19. "limit": limit,
  20. },
  21. )
  22. return response.json()
  23. def delete_connect(app_id):
  24. response = session.post(
  25. "https://cgi.connect.qq.com/authmng/del_app_auth",
  26. headers={
  27. "Referer": "https://cgi.connect.qq.com/proxy.html?callback=1&id=1"
  28. },
  29. data={
  30. "appid": app_id,
  31. },
  32. )
  33. payload = response.json()
  34. print("AppID: %s, Message: %s" % (app_id, payload["msg"]))
  35. def main():
  36. total = fetch_auth_list(0, 0)["result"]["total"]
  37. app_ids = set()
  38. for index in range(0, total, 20):
  39. apps = fetch_auth_list(index, 20)["result"]["data"]
  40. app_ids |= set(app["appid"] for app in apps)
  41. for app_id in sorted(app_ids):
  42. delete_connect(app_id)
  43. if __name__ == "__main__":
  44. main()

参考

全文转载自 V2ex

原文链接:一键清除 QQ 互联授权