
Osintgram v2.0
Osintgram 是一个针对 Instagram 的开源情报(OSINT)工具。它提供交互式 shell,用于通过昵称对任何用户的 Instagram 账户进行分析。
Osintgram 🔎📸
把它指向一个 Instagram 账号,找出背后是谁。 Osintgram 收集、交叉比对并整理公开资料所泄露的一切 —— 关注者、配文、话题标签、带地理标记的位置、发帖习惯、公开 联系方式 —— 全部呈现在一个你运行在自己机器上的 Web 界面中。
用自然语言提问,本地 AI 模型会判断该执行哪些查询。 或者不用:自己挑选命令,完全跳过模型。
你可能会喜欢它的理由
它回答的是问题,而不只是执行命令。 “他们有多少关注者,最常用哪些 话题标签?” 会运行三项查询,然后返回一段书面回答 —— 以及下方的原始结果,这样你可以自行核查,而不必轻信 那段文字。
除了查询本身,没有任何数据离开你的机器。 AI 通过
Ollama 在本地运行:不需要 OpenAI 密钥、不需要订阅,
你的任何提示词都不会发送给任何人。界面由 127.0.0.1 提供服务。
它会在你运行之前告诉你一次搜索要花多少钱。 Instagram 数据 不是免费的,而大多数工具让你用昂贵的方式才发现这一点。这个工具会预先为 你的选择计价,显示剩余额度,缓存每一个请求,让你永远不会为同一次查询付两次钱, 并允许你限制或停止一次运行 —— 在服务端,而不只是在浏览器里。
它会恰当地展示所发现的内容。 帖子缩略图以可筛选的网格呈现, 带地理标记的位置显示在地图上,某人发帖时间的星期 × 小时热力图, 两个账号之间的对比。不是一堵 JSON 墙 —— 不过每张卡片上 一键即可查看 JSON。
你可以把结果交给别人。 一个按钮就能把完成的搜索 变成一份独立的 HTML 报告,可在任何浏览器中打开,无需服务器,也无需 Osintgram。
两种使用方式
AI 模式 —— 描述你想要什么。本地模型会挑选命令、运行 它们并总结。它只能从下面同一份列表中选择;它无法 凭空发明查询或编造数据。
基础模式 —— 不需要模型,也不需要 Ollama。全部 28 条命令,每条一行, 分组且可搜索。勾选你想要的,设置参数,按顺序运行。
你也可以在 AI 模式下将用户名留空,只询问某个话题标签 或地点 —— 这类搜索不属于任何账号。
你能查出什么
| 个人资料 | 简介及其中的每一个链接、关注者/正在关注/帖子数量、类别、公开邮箱、电话和商业地址(精确到坐标)、关联的 Facebook id —— 外加 Instagram 自己的 关于此账号:注册国家、创建日期、用户名更改过多少次 |
| 关系网络 | 关注者和正在关注、Instagram 推荐的相关账号、谁标记了他们、他们标记了谁、谁评论最多 —— 以及两个账号之间的共同联系人 |
| 内容 | 按使用量排名的话题标签、配文、每一条评论、点赞和评论统计、照片/视频/轮播图分类及观看量和付费合作、发帖时间热力图、带地理标记的位置显示在地图上、照片替代文本 |
| 联系方式 | 目标账号的关注者或正在关注者中的公开邮箱和电话号码 |
| 无需目标账号 | 使用某个话题标签(热门或最新)发布的帖子,或来自某个地点的帖子,以及发布者是谁 |
快拍、精选和头像会以直接的 CDN 链接返回 —— 任何包含媒体的卡片都提供一键打包下载原始文件。
快速开始
pip install -r requirements.txt
uvicorn src.web.app:app --host 127.0.0.1 --port 8000 --reload # or: make run
你需要一个数据后端。页面会打开一个面板,你可以在其中直接粘贴 HikerAPI 密钥 —— 它会在被接受前经过验证, 并可保存以供下次使用。(免费的 instagrapi 登录也可用,使用你自己的 Instagram 账号 —— 权衡取舍请参阅指南。)
如需 AI 模式,请安装 Ollama 并拉取一个 支持工具调用的模型:
ollama pull llama3.1:8b # ~4.7 GB, the default
基础模式无需它即可运行。
更喜欢容器?
docker compose up --build # or: make docker
相同地址,相同行为 —— 仅在 127.0.0.1 上发布。你的密钥、缓存
和已保存的搜索保留在主机上的 config/、cache/ 和 dossier/ 中,
绝不会进入镜像内部。AI 模式会连接到你主机上运行的 Ollama。
$${\color{red}Warning:}$$ 它运行在
127.0.0.1上,且没有身份验证。它被设计为在你自己的机器上运行 —— 在没有先在其前面加上一层认证之前,不要将它暴露到 localhost 之外。
📖 阅读完整指南 → doc/web-ui.md
两种后端的设置、每条命令及其参数和费用、如何控制开销、 导出和分享结果、所有配置选项, 以及故障排除。
使用之前
仅供教育目的。 贡献者对本工具的使用 不承担任何责任。
- 不要使用你自己的或主要的 Instagram 账号来使用它。
- 切勿提交
config/credentials.ini—— API 密钥和 Instagram 凭据就在那里。它已被 git 忽略;请保持这样。如果某个密钥曾被 推送过,请轮换它:删除文件并不会将其从历史记录中移除。 - 结果包含他人的个人数据。请依照 数据保护法(GDPR 及同等法规)和 Instagram 的使用条款处理它们。
- 你无法查看私密资料。没有任何东西可以。声称能做到的工具 都是骗局。
开发
pip install -r requirements-dev.txt
python -m pytest
测试套件完全针对合成测试数据运行 —— 无需 API 密钥、无配额、 无网络。它还会检查文档是否已与 代码脱节。
欢迎功能请求和拉取请求 —— 请开一个 issue。发现了 安全问题?请改为私下报告:参见 SECURITY.md。
致谢
Osintgram 由 Giuseppe Criscione (Datalux) 编写。2.0 版本围绕一个 Web 界面和一个可复用的服务层对其进行了重建,并新增了 AI 模式、成本控制 和更新的分析功能 —— 参见更新日志。
它极大地得益于自首次发布以来所有做出贡献的人:
Instagram 数据来自 HikerAPI 或 instagrapi。地理编码由 Nominatim / OpenStreetMap 提供。 地图由 Leaflet 提供。本地模型通过 Ollama 运行。
依据 GPL-3.0 许可证发布。
Instagram 是 Meta Platforms, Inc. 的商标。本项目与 Meta 无关联、 未获其认可或批准。