「至臻原创」AI+Fiddler 抓取腾讯QQ查询接口插图

最近想要弄一下博客的评论区的自动填表功能,实现输入QQ号就自动获取相关的昵称信息以及头像,但是很不幸的是,现在接口需要鉴权访问,这就很难受了。为了更加方便,所以我选择了去抓取QQ的查询用户的接口

当然,本文的接口并不是对QQ的通信协议进行抓取,而仅仅是针对查询接口的API,L7上的一些操作罢了。

Fiddler 下载&安装

「至臻原创」AI+Fiddler 抓取腾讯QQ查询接口插图1

由于原版的Fiddler存在问题,所以我这里是下载的一个精易论坛的版本,可以捕获其他进程的 HTTP/HTTPS 数据包,如果非要用原版的则需要配置一个「Proxy」代理,指向Fiddler的端口,例如下图所示:

「至臻原创」AI+Fiddler 抓取腾讯QQ查询接口插图2

记得要勾选「捕获HTTPS连接」这个选项,并且要信任根证书!

「至臻原创」AI+Fiddler 抓取腾讯QQ查询接口插图3

抓取腾讯接口

这里我们打开QQ的查找界面,点击后看看Fiddler的情况:

「至臻原创」AI+Fiddler 抓取腾讯QQ查询接口插图4
「至臻原创」AI+Fiddler 抓取腾讯QQ查询接口插图5
Fiddler

选择QQ进程,并右键选择仅显示当前进程,接着我们输入一个能够搜索到的QQ号码,如果搜索不到或者主显账号不是QQ号的都是搜索不到的:

「至臻原创」AI+Fiddler 抓取腾讯QQ查询接口插图6

我们看一下Host,找到第一个「find.qq.com」,我们解析一下他的返回内容,看看到底返回了些什么:

{
    "retcode": 0,
    "result": {
        "sret": 0,
        "exact": 0,
        "buddy": {
            "info_list": [
                {
                    "uin": "2675395607",
                    "nick": "小伍同学",
                    "country": "",
                    "province": "",
                    "city": "",
                    "gender": 1,
                    "age": 22,
                    "url": "http://thirdqq.qlogo.cn/g?b=oidb\u0026k=yO4o4G1Hx777EINfWTCgvQ\u0026kti=ZMM2TAAAAAE\u0026s=100\u0026t1687699262"
                }
            ],
            "exact": "",
            "sessionid": 0
        },
        "qidian": null,
        "qiye": null
    }
}

很好,那么这里我们就成功获取到了我们想要的内容:QQ昵称和QQ头像链接。

请求分析

Good,那么我们再来看看这个请求所发送的内容:

「至臻原创」AI+Fiddler 抓取腾讯QQ查询接口插图7
「至臻原创」AI+Fiddler 抓取腾讯QQ查询接口插图8
请求体

经过分析,这个Cookies里的「Skey」和「Uin」为必传参数,其他的可以不包含在Cookies,那么当然这个Skey也是有过期时间的,所以后续我再想想办法搞一个账号密码的登录协议接口

我们将这个请求体交给AI,并让他转换为Python格式的代码即可。

示例代码

您需要回复本文后才能查看完整内容

立即回复
已经回复?立即刷新

其他

目前新版NT架构的QQ还没测试,但是老版本的话,这个QQ查找页面其实是嵌套了一层webview,其中指向的URL为:https://find.qq.com/index.html?version=1&im_version=6001&width=910&height=610&search_target=0

不过搜索好友的接口还是做了鉴权,和示例代码中的请求API地址是一致的。给个图大家自己体会一下:

「至臻原创」AI+Fiddler 抓取腾讯QQ查询接口插图9