SearchPhone核心代码深度剖析:PhoneOSINT类查号流程与报告导出逻辑逐段解析
SearchPhone核心代码深度剖析PhoneOSINT类查号流程与报告导出逻辑逐段解析【免费下载链接】SearchPhonePhone number OSINT toolkit with multi-API search (Google, GitHub, Numverify, Reddit, DuckDuckGo), Hudson Rock infostealer intelligence, and automatic report generation.项目地址: https://gitcode.com/gh_mirrors/sea/SearchPhoneSearchPhone是一个用 Python 编写的开源手机号 OSINT 调查工具只需输入电话号码和地区它就能自动完成号码校验并调用 Numverify、Hudson Rock、GoogleSerpAPI、GitHub、Reddit、DuckDuckGo 六大数据源并行查号最后自动导出 JSON 与 PDF 报告。本文逐段剖析其单文件核心代码带你彻底看懂PhoneOSINT类的查号流程与报告导出逻辑轻松上手这款手机号 OSINT 工具。 快速上手3步跑通 SearchPhoneSearchPhone 是单文件工具整个逻辑都集中在 search_phone.py 中非常适合新手阅读源码。git clone https://gitcode.com/gh_mirrors/sea/SearchPhone cd SearchPhone pip install -r requirements.txt然后复制环境变量模板并填入 API Key模板见 example.envcp example.env .env # 编辑 .env 填入 3 个 Key python3 search_phone.py需要准备哪些 API Key服务环境变量作用是否必须NumverifyNUMVERIFY_KEY号码校验与运营商信息✅ 建议配置SerpAPISERPAPI_KEYGoogle 搜索结果✅ 建议配置GitHub TokenGITHUB_TOKENGitHub 代码搜索✅ 建议配置Hudson Rock—信息窃取木马情报❌ 免费免 Key依赖清单非常轻requirements.txt 中仅包含requests、colorama、python-dotenv、phonenumbers、fpdf2五个库。未配置的 API 会被优雅跳过返回空结果工具不会报错中断。 PhoneOSINT 类剖析初始化与数据结构核心类PhoneOSINT定义在 search_phone.py 。它的构造函数 search_phone.py 只做三件事读取 API Key通过os.getenv从环境变量中取出numverify、serpapi、github三个密钥初始化results结果容器一个按数据源分桶的字典包含phone_info、numverify、hudsonrock、google、github、reddit、duckduckgo七个键所有查号结果都汇入这里创建reports/目录报告输出目录不存在时自动创建为后续导出做准备。这种先集中采集、再统一导出的结构是理解整个工具的关键——查号与报告两条链路通过self.results解耦。 查号流程第一步validate_phone 号码校验validate_phone 基于phonenumbers库完成号码解析一次调用产出 5 项基础情报国际格式 / 国内格式 / E.164 格式三种规范化写法供后续多格式搜索使用所属国家geocoder 反查运营商carrier 查询时区timezone 查询。值得注意的设计校验失败不阻塞流程。即使号码不符合国际标准analyze_phone 中也会打印提示并继续执行其他数据源搜索——对 OSINT 场景来说能查就查比格式严格更重要。⚡ 六源并行查号analyze_phone 核心逻辑analyze_phone 是整个工具的总调度执行三步本地校验先跑validate_phone输出基础信息并行发起 6 个远程搜索任务使用ThreadPoolExecutor(max_workers6)线程池把 6 个搜索函数同时提交执行按完成顺序回收结果as_completed配合 25 秒超时逐个收割任一数据源出错只影响自身不会拖垮全局。数据源方法查什么Numverifycheck_numverify有效性、运营商、线路类型Hudson Rockcheck_hudsonrock该号码是否被信息窃取木马Infostealer入侵过Googlesearch_google网页中该号码的公开曝光记录Redditsearch_reddit论坛帖子中的号码提及GitHubsearch_github开源代码里泄露的号码DuckDuckGosearch_duckduckgo补充搜索引擎结果两个值得学习的小细节多格式查询提升命中率search_google并不只搜原始号码而是把原始格式、前缀 E.164、纯数字、无空格等多种写法用OR拼成一条查询再对返回的标题/链接/摘要做多格式二次过滤search_phone.py大幅减少漏报。Hudson Rock 免费情报源该 API 无需 Key直接请求即查。若返回stealers列表非空说明该号码曾出现在被窃取的凭据中报告会明确标记COMPROMETIDO已泄露并展示窃密木马家族、时间、设备名等细节search_phone.py。 报告导出逻辑JSON PDF 双格式自动落盘查号结束后analyze_phone的收尾三连击是display_results()终端展示 →export_results()导出 JSON →export_pdf()导出 PDF。文件名与时间戳get_filename 用清洗后的号码 时间戳生成唯一文件名例如phone_51XXXXXXXX_20260810_130804.json多次调查互不覆盖。JSON 导出export_results 把metadata号码、地区、时间戳、工具名与results全量数据一起json.dump落盘方便二次加工或导入其他工具。PDF 导出export_pdf 基于fpdf2逐节绘制基本信息 → Numverify → Hudson Rock → Google → Reddit → GitHub → 汇总统计。两个健壮性设计值得新手参考依赖降级文件头部 search_phone.py 先尝试导入 fpdf失败时PDF_AVAILABLEFalse运行时跳过 PDF 并提示安装命令JSON 报告照常生成文本清洗clean_text 把 emoji、箭头等特殊符号替换为 ASCII 等价物避免 PDF 乱码。运行结束后终端会打印两份报告路径完整效果如下Google 命中 9 条 GitHub 命中 10 条自动汇总并落盘 总结新手可复用的 3 个设计模式结果分桶字典results按数据源分键存放采集与展示/导出完全解耦线程池 超时回收多 API 并行调用互不阻塞单点故障不影响整体可选依赖优雅降级缺 API Key 跳过、缺 fpdf 跳过 PDF工具始终保持可用。 相关文件速查文件说明search_phone.py主程序PhoneOSINT类与main入口全部在此example.envAPI Key 配置模板requirements.txt5 个 Python 依赖README.md项目文档功能、Key 申请、支持系统LICENSEMIT 许可证掌握这套校验 → 并行采集 → 双格式导出的流水线后你可以轻松把 SearchPhone 的思路迁移到邮箱、用户名等其他 OSINT 查号场景。【免费下载链接】SearchPhonePhone number OSINT toolkit with multi-API search (Google, GitHub, Numverify, Reddit, DuckDuckGo), Hudson Rock infostealer intelligence, and automatic report generation.项目地址: https://gitcode.com/gh_mirrors/sea/SearchPhone创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻

三千元档电钢琴:立柜式与便携式到底怎么选?

三千元档电钢琴:立柜式与便携式到底怎么选?

“老师,这个长得像柜子的琴,和那两个架在架子上卖的琴,同样都三千多,我到底买哪个?”这句话我今年至少被问过三十回。问的人手里要么攥着雅马哈P45的链接,要么存着罗兰FP18的截图,要么就是最近突…

2026/10/11 9:45:06 阅读更多 →
把 OpenClaw 装进电脑:24 小时自动干活的 TaoToken 配置清单

把 OpenClaw 装进电脑:24 小时自动干活的 TaoToken 配置清单

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/11 4:24:24 阅读更多 →
CodeX 开启 Image Gen 生图功能:config.toml 里 model_providers.custom 怎么配到 TaoToken

CodeX 开启 Image Gen 生图功能:config.toml 里 model_providers.custom 怎么配到 TaoToken

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/10 3:16:43 阅读更多 →

最新新闻

数据结构 - > 排序算法

数据结构 - > 排序算法

1. 排序的概念1.1 常见的排序算法1.2 排序算法的评价指标复杂度:评价排序算法的第一大指标就是时间复杂度和空间复杂度,它衡量算法的时间效率和空间效率。稳定性:假定在待排序的数据元素中有两个元素 Ri 和 Rj,它们对应的关键字为…

2026/10/12 3:39:10 阅读更多 →
ccg-workflow Shell 技能指南:Bash 脚本自动化、系统管理与多模型协作实战

ccg-workflow Shell 技能指南:Bash 脚本自动化、系统管理与多模型协作实战

【免费下载链接】ccg-workflow 多模型协作工作流引擎 — /ccg:go 一个命令,AI 自动分析意图、选择策略、编排 Codex Gemini Claude 协作执行 项目地址: https://gitcode.com/gh_mirrors/cc/ccg-workflow 点击查看 免费下载 导读 本文基于 ccg-workfl…

2026/10/12 3:39:10 阅读更多 →
2026年软件测试趋势:AI Agent、质量内建与可观测性重塑质量保障

2026年软件测试趋势:AI Agent、质量内建与可观测性重塑质量保障

做测试这行,每年年底都在猜明年的技术方向,但2026年这次不太一样。我最近和不少测试负责人、开发团队聊下来,大家最焦虑的已经不是又冒出了什么新工具,而是整个质量体系正在被 AI 和平台工程重构,很多沿用多年的测试方…

2026/10/12 3:39:10 阅读更多 →
netdxf实战:DXF文字注释与尺寸标注的创建与修改

netdxf实战:DXF文字注释与尺寸标注的创建与修改

接触过DXF开发的人应该都有这种感觉:画直线、画圆、画多段线都属于“基本功”,真正让图纸变得可读、可传递设计意图的,是文字注释和尺寸标注。这一篇是整个netdxf系列里我比较想写的一篇,因为注释和标注的处理逻辑和普通几何实体完…

2026/10/12 3:39:10 阅读更多 →
文华财经主升浪买点指标公式拆解:多条件共振识别趋势启动

文华财经主升浪买点指标公式拆解:多条件共振识别趋势启动

1. 文华财经主升浪买点指标的实战拆解做期货日内或者波段的朋友,应该都听过“主升浪”这个词。行情走主升浪的时候,速度最快、幅度最大,但也是最难拿得住的一段。很多朋友在文华财经软件里翻遍了各类指标公式,要么信号滞后&#x…

2026/10/12 3:39:10 阅读更多 →
ppt-master 的 IBM 品牌身份预设解析:从 Carbon Blue 设计规范到可执行的 design_spec

ppt-master 的 IBM 品牌身份预设解析:从 Carbon Blue 设计规范到可执行的 design_spec

AI 技能人工智能 【免费下载链接】ppt-master AI 把任意文档生成真正可编辑的 PowerPoint —— 原生形状与动画、演讲者备注可合成音频旁白、还能参考你自己的 .pptx 模板,而不是一张张图片 何雨果出品 项目地址: https://gitcode.com/hugohe3/ppt-master 点击查看…

2026/10/12 3:38:09 阅读更多 →

日新闻

复古胶片颗粒感噪点合成器:Canvas ImageData 像素高斯杂色注入算法

复古胶片颗粒感噪点合成器:Canvas ImageData 像素高斯杂色注入算法

在数码相机、高清显示屏与现代矢量图形技术高度发达的今天,画面可以做到绝对的锐利、平滑与无瑕。然而,当一张秋日手账插画或拍立得照片过于“平整无瑕”时,往往会散发出一种冰冷生硬的“数码塑料感(Digital Plasticity&#xff0…

2026/10/12 0:00:59 阅读更多 →
活字印刷古籍线装排版:Canvas 竖排文字与栏线自适应算法

活字印刷古籍线装排版:Canvas 竖排文字与栏线自适应算法

在现代网页与移动端设计中,横排(Horizontal Layout)早已经成为了绝对的主流。然而,当我们翻开泛黄的线装古籍、宋版木刻诗集,或是欣赏一张茶道雅集的手写便签时,那种**自上而下纵向书写、自右向左逐列铺展&…

2026/10/12 0:00:59 阅读更多 →
周日晚间的“精神松绑减震器”:无压力情绪倾倒箱与温和轻声陪伴

周日晚间的“精神松绑减震器”:无压力情绪倾倒箱与温和轻声陪伴

每到周日的晚上八点到十点,很多人心里都会悄悄亮起一盏警示灯。 在心理学上,这种现象有一个专门的称谓——“周日夜晚焦虑症(Sunday Scaries)”。明天又是周一,闹钟又要重新在七点响彻卧房;脑海里仿佛有一个…

2026/10/12 0:00:59 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/12 0:16:30 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/12 0:16:38 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/12 0:16:43 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/11 10:45:37 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/11 14:36:53 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/11 14:36:54 阅读更多 →