手机号查QQ号,三步就能跑起来的开源小工具

📅 2026/8/14 12:05:57
手机号查QQ号,三步就能跑起来的开源小工具
手机号查QQ号三步就能跑起来的开源小工具【免费下载链接】phone2qq项目地址: https://gitcode.com/gh_mirrors/ph/phone2qq忘记QQ号的时候手里只剩一个手机号这种窘境几乎人人都遇到过。而手机号查QQ号这件听起来有点神奇的事phone2qq 这个开源项目用一份不到两百行的 Python 代码就做到了。它不弹窗、不装客户端打开终端敲几下回车结果就出来了。这篇文章不打算堆命令而是把它凭什么能查到这件事讲透。为什么手机号能反过来查到QQ号先别急着看代码弄明白为什么能查更重要否则你只会用不知道什么时候该用它。QQ 有一个长期存在的能力只要你在某台设备上开启过手机号登录系统内部就建立了一条手机号 → QQ号的对应关系。phone2qq 正是顺着这条对应关系发起查询的。打个比方这就像你在自家门口贴了张有事请拨这个号的便条而查询工具循着便条上的号码反向找到了你的家门。能查到前提是你主动贴过这张便条。划重点这不是破解也没有暴力穷举它只是利用了 QQ 协议里本就存在的查询通道。所以如果某个号码从未开启过手机号登录工具返回空结果属于正常现象不是坏了。一次查询其实是两轮暗号对答翻开主程序 qq.py真正干活的其实是两个函数login0825 和 login0826。为什么是两轮因为 QQ 服务器要先确认你是谁再决定要不要回答你要找谁。第一轮 login0825客户端递上手机号服务器验明身份后回一张通行证代码里的 token0825第二轮 login0826客户端带着通行证再次请求服务器这才把对应的 QQ 号返回回来。整个通信走的是 UDP 协议——你可以把它想象成寄平信塞进邮筒不用等回执服务器收到后回信即可比先打电话确认再寄轻快得多。这一趟完整旅程可以浓缩成下面这张表五步走完步骤做什么由哪个文件完成1把手机号整理成协议要求的报文格式qq.py2用 TEA 加密给报文上锁tea.py3通过 UDP 发给 QQ 服务器qq.py4接收并解密服务器返回的数据tea.py5从解密结果里提取出 QQ 号qq.pytea.py 里的加密到底在保护什么两轮对话里你的手机号在传输过程中被反复加密负责这件事的就是 tea.py 里的 TEA 加密算法。TEA 是一种对称加密简单说就是加密用这把钥匙解密也用这把钥匙。类比现实你把证件放进带锁的保险箱寄给对方时连同钥匙一起给对方开箱取件后再用同一把钥匙把回信锁好寄回。客户端和服务器各持一套约定好的密钥中间即使有人截获了数据包看到的也只是一串没有规律的乱码。有意思的是这个项目里的 tea.py 不只实现了加密还附带了解密函数。整个查询过程其实就是加密发出、解密接收的镜像操作两行 import 就接上了。如果你对加密感兴趣完全可以单独把 tea.py 抽出来当工具包用。亲手跑一次三步看到结果原理清楚了实操其实很短。你需要一台装了 Python 3 的电脑然后做三件事第一步把项目拉到本地在终端执行git clone https://gitcode.com/gh_mirrors/ph/phone2qq cd phone2qq第二步打开 qq.py找到开头附近这一行把里面的号码换成你自己的 11 位手机号self.num 10000000000 # 手机号第三步运行主程序python3 qq.py白话解释一下clone 是下载代码改那一行是告诉工具帮我查这个号码最后一条命令让脚本跑起来。几秒钟后终端就会打印出对应的 QQ 号。整个流程不需要你理解任何网络协议改一行字、敲一条命令就够了。查不到结果先对照这三件事如果跑完没有任何输出别急着怀疑工具坏了按顺序排查一是手机号格式。必须是 11 位纯数字不要加 86也不要加空格。代码里所有对号码的处理都按 11 位数字设计的。二是手机号登录开关。前面说过这是能查到的前提。你可以用手机登录 QQ在设置里确认自己的账号是否开通了手机号登录没开通的话先开通再试。三是方法时效性。项目自带的说明里写了一句很实在的备注这套查询方式基于某个时期的 QQ 协议官方接口随时可能调整方法有失效的可能。这里有个坑如果你在 2026 年的今天跑不出来大概率不是操作问题而是服务器端协议已经变了。但这不妨碍你把它当成一份绝佳的协议分析教材——一个脚本如何组织报文、如何加密、如何与服务器对答全部摊开在眼前。想批量查询改几行代码就行如果只是查一两个号码改 self.num 就够了。但如果你想把自己名下多个号码一次性查完可以借用主程序末尾预留的批量示例写一个循环phone_list [13912345678, 13887654321, 13711223344] for phone in phone_list: qq login.getQQ(phone) if qq: print(f{phone} - {qq})这段代码的意思是准备一个号码清单逐个查询能查到就打印对应关系。想保存结果运行的时候加个重定向即可python3 qq.py qq_results.txt这样查询结果会写进 qq_results.txt 文件方便你整理成自己的账号对照表。用它之前先想清楚边界工具本身没有善恶用法才有。phone2qq 的合理场景是找回自己忘记的账号、整理自己名下的多个 QQ、或者作为学习 QQ 协议和 TEA 加密的参考实现。请务必只查询属于你自己的手机号。批量扫描他人号码、把查询能力包装成付费服务、或者用结果做任何骚扰性操作都属于越界行为。这个工具的工作方式是顺着既有对应关系查,一旦被滥用伤害的是所有普通用户的使用环境。现在就值得做的一件事读到这里你不需要记住任何代码细节只需要做一件事掏出手机登录 QQ确认自己的账号开通了手机号登录。如果已开通回到电脑上按上面三步跑一遍你会亲眼看到手机号与 QQ 号的对应关系被打印出来如果没开通顺手打开它你的账号从此就多了一条找回路径。跑通之后如果你对两轮暗号对答背后的报文结构产生了好奇可以继续研究 qq.py 里 login0825 与 login0826 的字节布局或者把 tea.py 的加密逻辑和标准 TEA 实现做个对比——那会是另一段值得探索的旅程。【免费下载链接】phone2qq项目地址: https://gitcode.com/gh_mirrors/ph/phone2qq创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考