jeet-ganguly/birdy-edwards-lite
GitHub: jeet-ganguly/birdy-edwards-lite
一款零 LLM 依赖的本地化 Facebook 社交情报平台,自动化完成个人资料采集、交互网络映射与人脸聚类分析。
Stars: 3 | Forks: 1

# BIRDY-EDWARDS LITE
### *渗透与曝光 — 无 LLM 版本*
[](https://python.org)
[](https://flask.palletsprojects.com)
[](https://github.com/seleniumbase/SeleniumBase)
[]()
[]()
**本地优先的 Facebook SOCMINT 平台 — 无需 LLM,无需 Docker,不依赖云服务。**
[安装说明](#installation) · [功能](#features) · [疑难解答](#troubleshooting) · [免责声明](#️-disclaimer) · [贡献指南](#contributing)
## 什么是 Birdy-Edwards Lite?
Birdy-Edwards Lite 是完整版 Birdy-Edwards FACEBOOK SOCMINT 平台的精简、低依赖版本。它执行相同的核心个人资料情报工作流程——数据收集、交互映射、人脸聚类和网络可视化——无需任何 AI 模型、Docker 容器或云服务。
一切都在您的本地机器上运行。无需 GPU。无需下载模型。无外部 API 调用。
它专为希望在普通硬件上获得快速、可重复结果的调查人员而设计,或者适合那些希望在没有完整 AI 驱动版本开销的情况下运行该工具的用户。如需 AI 驱动版本,请查看此代码库 [点击此处](https://github.com/jeet-ganguly/birdy-edwards)

## 架构
## 功能
- 🔍 **个人资料数据收集** — 自动收集帖子、照片、Reels、关于数据、评论、交互者姓名和个人资料链接
- 📊 **频率评分** — 跨所有帖子类型(照片、Reels、文本)的加权交互频率排名
- 🕸️ **网络图** — 交互式力导向图,显示目标 ↔ 交互者关系,频率加权边,全屏模式
- 🔗 **共同交互矩阵** — 热力图显示哪些交互者在帖子中同时出现,支持阈值过滤(1+、2+、3+、5+)
- 💠 **共同交互力导向图** — 交互者共现关系的力导向聚类视图,全屏模式
- 📈 **交互时间轴** — 照片和文本帖子交互的逐日堆叠条形图
- 🍩 **分布环形图** — 按媒体类型(照片 / Reels / 文本)划分的交互细分
- 👤 **人脸情报** — CNN / HOG 人脸检测,128D 编码,以及跨所有收集图像的身份聚类
- 🌳 **人脸聚类树** — 检测到人员的频率级联层次结构,从出现最多到最少
- 🎯 **前 7 名优先目标** — 具有关于数据卡片的最高频交互者
- 📋 **关于数据卡片** — 目标和前 7 名交互者的个人资料字段,按部分分组(个人、工作、教育等)
- 🗑️ **调查管理** — 从主页删除任何调查及其所有收集的数据(数据库行 + 人脸图像文件)
- 🌙 **暗色 / 亮色主题** — 跨所有仪表板组件的完整主题切换
- 🤖 **零 LLM 依赖** — 无需 Ollama,无需下载模型,无需 GPU
## ⚠️ 免责声明
## 对比 — Lite 版 vs 完整版
| 功能 | Lite 版 | 完整版 (AI) |
|---|:---:|:---:|
| 个人资料数据收集 | ✅ | ✅ |
| 交互频率评分 | ✅ | ✅ |
| 网络 + 共同交互图 | ✅ | ✅ |
| 时间轴 + 环形图 | ✅ | ✅ |
| CNN / HOG 人脸聚类 | ✅ | ✅ |
| 前 7 名元数据收集 | ✅ | ✅ |
| AI 情感 / 情绪分析 | ❌ | ✅ |
| 行为人综合评分 | ❌ | ✅ |
| 原籍国检测 | ❌ | ✅ |
| 世界地图可视化 | ❌ | ✅ |
| PDF 情报报告 | ❌ | ✅ |
| Docker 部署 | ❌ | ✅ |
| 需要 LLM | ❌ 无 | ✅ Ollama |
| 需要 GPU | ❌ | ✅ 推荐 |
## 系统要求
| 组件 | 最低要求 | 推荐配置 |
|---|---|---|
| 操作系统 | Ubuntu 22.04+ / Windows 10+ | Ubuntu 24.04 LTS |
| Python | 3.10+ | 3.12 |
| 内存 | 4 GB | 8 GB |
| 存储 | 5 GB 可用空间 | 10 GB 可用空间 |
| 浏览器 | Chrome / Chromium | 最新版 Chrome |
## 安装说明
### 步骤 1 — 克隆代码库
```
git clone https://github.com/jeet-ganguly/birdy-edwards-lite.git
cd birdy-edwards-lite
```
### 步骤 2 — 运行安装脚本
```
chmod +x setup.sh
./setup.sh
```
安装脚本将会:
- 检查您的 Python 版本(需要 3.10+)
- 安装系统构建依赖(cmake、build-essential 等)
- 创建 Python 虚拟环境
- 编译并安装 dlib(5–10 分钟)
- 安装 face_recognition 和模型
- 安装 Flask、SeleniumBase、Pillow、NumPy
- 安装 Chrome 驱动
- 修补 face_recognition_models 以兼容 Python 3.12
- 创建所需目录
### 步骤 3 — 启动应用
```
source venv/bin/activate
cd app
python3 app.py
```
### 步骤 4 — 打开 Web UI
```
http://localhost:5000
```
## Facebook 会话设置
Birdy-Edwards Lite 使用 **Cookie-Editor** 浏览器扩展来导入您的 Facebook 会话。没有 Selenium 登录提示,没有自动化账户交互。
1. 安装 Cookie-Editor:
- [Chrome](https://chromewebstore.google.com/detail/cookie-editor/hlkenndednhfkekhgcdicdfddnkalmd)
- [Firefox](https://addons.mozilla.org/en-US/firefox/addon/cookie-editor/)
2. 在 Facebook 上登录您的**专属调查账户**
3. 在 `facebook.com` 上点击 Cookie-Editor 图标
4. 点击 **Export → Export as JSON**
5. 前往 `http://localhost:5000`
6. 将复制的 JSON 粘贴到 **IMPORT COOKIES** 框中
7. 点击 **SAVE COOKIES**
## 运行调查
1. 前往 `http://localhost:5000`
2. 验证 cookie 状态栏显示 ✓ 绿色
3. 输入目标 Facebook 个人资料 URL
4. 选择扫描深度:
- **Light** — 5 个帖子 / 5 个 Reels / 5 张照片
- **Medium** — 10 个帖子 / 10 个 Reels / 10 张照片
- **Deep** — 20 个帖子 / 20 个 Reels / 20 张照片
5. 点击 **LAUNCH PIPELINE**
6. 流水线叠加层将显示所有 8 个步骤的实时进度
7. 完成后,您将自动重定向到分析仪表板
## 分析仪表板
仪表板在一个页面中呈现所有收集到的情报,无需任何服务器端的 AI 处理。
| 部分 | 显示内容 |
|---|---|
| **交互者注册表** | 所有交互者按总交互次数排名 |
| **首要交互者** | 频率最高的单个交互者及其完整统计信息 |
| **交互分布** | 环形图 — 照片 / Reels / 文本划分 |
| **时间轴** | 交互的逐日堆叠条形图 |
| **前 7 名优先目标** | 前 7 名交互者,带有关于数据的 VIEW 按钮 |
| **网络图** | 力导向目标 ↔ 交互者图,支持全屏 |
| **共同交互矩阵** | 显示谁同时出现的热力图,带阈值过滤 |
| **共同交互力导向图** | 共现聚类视图,带阈值过滤,支持全屏 |
| **人脸聚类树** | 检测到人员的频率级联树 |
点击任何节点或交互者行,将打开一个包含交互样本和个人资料链接的侧面板。
## 疑难解答
**dlib 编译失败**
确保已安装 cmake 和 build-essential。运行 `sudo apt install cmake build-essential`,然后重试 `pip install dlib`。
**face_recognition 在 Python 3.12 上崩溃或报错**
安装脚本会自动修补 `face_recognition_models`。如果您是手动安装的,请运行:
```
source venv/bin/activate
python3 -c "
import sys, os
path = os.path.join(sys.prefix, 'lib', f'python{sys.version_info.major}.{sys.version_info.minor}', 'site-packages')
print(path)
"
```
然后检查 `face_recognition_models/__init__.py` 是否未引用 `pkg_resources`。
**流水线在数据收集阶段失败**
您的 cookie 可能已过期。请前往 `http://localhost:5000`,从 Cookie-Editor 重新导出,然后重新导入。
**未检测到人脸**
Facebook CDN URL 会过期。人脸聚类仅在全新的流水线运行后,当图像 URL 仍然有效时才能正常工作。
**端口 5000 已被占用**
编辑 `app.py` 的最后一行:将 `port=5000` 更改为 `port=5001`,然后通过 `http://localhost:5001` 访问。
**数据库错误:no such table**
从主页删除该调查并启动新调查。Schema 会在首次使用时自动创建。
## 致谢
- 灵感来源于 [Sherlock](https://github.com/sherlock-project/sherlock) 和 OSINT 研究社区
- [SeleniumBase](https://github.com/seleniumbase/SeleniumBase) — 不可检测的 Chrome 自动化
- [face_recognition](https://github.com/ageitgey/face_recognition) — 人脸检测和 128D 编码
- [D3.js](https://d3js.org) — 网络和力导向图渲染
- [Chart.js](https://www.chartjs.org) — 时间轴、环形图和条形图渲染
- [Flask](https://flask.palletsprojects.com) — Web 框架
**BIRDY-EDWARDS LITE** · 渗透与曝光 · 无 LLM · 本地优先
标签:CNN卷积神经网络, ESC4, Facebook情报收集, Flask, GitHub, OSINT, Python, SeleniumBase, SOCMINT, 交互网络映射, 人员调查, 人脸聚类, 实时处理, 开源情报工具, 情报分析, 无Docker, 无LLM, 无云依赖, 无后门, 本地化部署, 浏览器自动化, 画像分析, 目标侧写, 社交网络分析, 网络图谱, 网络诊断, 自动化数据采集, 逆向工具