LLMs之Tool:social-analyzer的简介、安装和使用方法、案例应用之详细攻略
LLMs之Tool:social-analyzer的简介、安装和使用方法、案例应用之详细攻略
目录
1、特点
1、安装
2、在 Python 项目中作为对象导入
示例 1:
示例 2 (带更多参数):
social-analyzer的简介

这是一个用于在超过1000个社交媒体网站上分析和查找个人资料的工具,提供 API、命令行界面(CLI)和 Web 应用三种形式。
Social Analyzer 是一个开源情报(OSINT)工具,旨在帮助用户跨越上千个社交媒体和网站,分析并找到特定人物的个人资料。它集成了多种分析和检测模块,用户可以在调查过程中自由选择使用哪些模块。
该工具的检测模块采用了一套基于不同检测技术的评级机制,会生成一个从 0 到 100 的评分值(表示“无-可能-是”),这种设计旨在减少误报(False Positives)。
通过此工具分析和提取的公开信息,可以帮助调查与可疑或恶意活动相关的个人资料,例如网络欺凌(cyberbullying)、网络诱骗(cyber grooming)、网络跟踪(cyberstalking)以及传播虚假信息等。此外,该项目目前已被一些资源有限国家的执法机构所使用(其使用的检测数据库与此处共享的有所不同)。
Github地址:https://github.com/qeeqbox/social-analyzer
1、特点
Social Analyzer 提供了丰富的功能,使其成为一个强大的信息搜集和分析工具:
- 字符串与名称分析:支持对用户名进行排列组合分析。
- 多技术查找:使用多种技术(如 HTTPS 库和 Webdriver)来查找个人资料。
- 多用户搜索:支持同时搜索多个用户名(用逗号分隔),用于关联分析。
- 多层检测机制:包括 OCR(光学字符识别)、常规、高级和特殊检测层。
- 信息可视化:使用 Ixora 将个人资料信息(元数据和模式)进行可视化展示。
- 元数据与模式提取:能够从目标中提取元数据和模式(源自 Qeeqbox OSINT 项目)。
- 元数据力导向图:为提取的元数据生成力导-向图(需要开启 ExtractPatterns)。
- 灵活的搜索范围:支持按网站排名(Alexa Ranking)或国家进行搜索。
- 按类型搜索:支持按网站类型(如成人、音乐等)进行搜索。
- 静态信息统计:提供个人资料的统计数据和静态信息(如类别、国家)。
- 交叉元数据统计:提供跨多个资料的元数据统计分析(源自 Qeeqbox OSINT 项目)。
- 输出过滤:自动过滤不必要的输出内容(如启用的 javascript 等)。
- 搜索引擎查询:支持通过 Google API 和 DuckDuckGo API 进行查询(可选)。
- 资料快照与信息:获取已找到个人资料的屏幕截图、页面标题、简介和网站描述。
- 语言学分析:查找名称来源、名称相似度以及按语言分的常见词汇。
- 年龄分析:提供有限的个人可能年龄分析。
- 高度可定制:支持自定义 User-Agent、代理、超时时间和隐式等待。
- 多平台 CLI:提供 Python CLI 和 NodeJS CLI(NodeJS 版本仅限于快速查找模式)。
- 截图功能:为检测到的个人资料生成屏幕截图(需要安装最新版 Chrome 浏览器)。
- 网格加速:提供 Grid 选项以加快检查速度(仅限于 docker-compose 部署)。
- 日志管理:可将日志以美化格式转储到文件夹或终端。
- 性能调整:可调整查找/获取个人资料的工作线程数(默认为15)。
- 失败重试:提供对查找失败的个人资料进行重新检查的选项。
- 结果筛选:可按“准确(good)”、“可能(maybe)”和“错误(bad)”筛选结果。
- 结果保存:可将分析结果保存为 JSON 文件。
- 简洁的界面:提供简化的 Web 界面和命令行界面。
特殊检测功能:
该工具还针对特定平台提供了专门的检测方法:
- Facebook: 可通过电话号码、姓名或个人资料名称进行查找。
- Gmail: 可通过 example@gmail.com 格式的邮箱进行查找。
- Google: 可通过 example@example.com 格式的邮箱进行查找。
social-analyzer的安装和使用方法
1、安装
Social Analyzer 提供了多种安装和运行方式,适用于不同操作系统和使用场景。
- Web 应用 (推荐): 启动后,可通过标准本地主机 URL 访问:http://0.0.0.0:9005/app.html
- 命令行 (CLI): 可直接在终端中运行。
在 Linux 上安装与运行
作为 Node.js Web 应用:
# 更新软件包列表
sudo apt-get update
# 根据你的Linux发行版,下面两行可能需要也可能不需要
sudo DEBIAN_FRONTEND=noninteractive apt-get install -y software-properties-common
sudo add-apt-repository ppa:mozillateam/ppa -y
# 安装依赖
sudo apt-get install -y firefox-esr tesseract-ocr git nodejs npm
# 克隆项目
git clone https://github.com/qeeqbox/social-analyzer.git
cd social-analyzer
# 更新和安装npm包
npm update
npm install
# 启动Web应用
npm start
作为 Node.js CLI:
# (安装步骤同上)
# ...
cd social-analyzer
npm install
# 运行CLI
nodejs app.js --username "johndoe"
作为 Python 包:
sudo apt-get update
sudo apt-get install python3 python3-pip
# 使用pip安装
pip3 install social-analyzer
# 运行
python3 -m social-analyzer --username "johndoe"
作为 Python 脚本:
sudo apt-get update
sudo apt-get install git python3 python3-pip
# 克隆项目
git clone https://github.com/qeeqbox/social-analyzer
cd social-analyzer
# 安装Python依赖
pip3 install -r requirements.txt
# 运行脚本
python3 app.py --username "janedoe"
2、在 Python 项目中作为对象导入
示例 1:
from importlib import import_module
SocialAnalyzer = import_module("social-analyzer").SocialAnalyzer()
results = SocialAnalyzer.run_as_object(username="johndoe",silent=True
)
print(results)
示例 2 (带更多参数):
from importlib import import_module
SocialAnalyzer = import_module("social-analyzer").SocialAnalyzer()
results = SocialAnalyzer.run_as_object(username="johndoe,janedoe",silent=True,output="json",filter="good",metadata=False,timeout=10,profiles="detected"
)
print(results)
3、命令行参数说明 (social-analyzer --h)
必需参数:
--username: 要搜索的用户名,例如 johndoe, john_doe 或 johndoe9999。可选参数:
--websites: 指定一个或多个网站进行搜索(用空格分隔),例如 youtube tiktok。
--mode: 分析模式,fast (快速), slow (慢速) 或 special (特殊)。
--output: 输出格式,json (用于集成) 或 pretty (美化输出)。
--options: 当找到个人资料时显示的信息,如 link, rate, title, text。
--method: find (仅显示检测到的), get (显示所有), all (合并两者)。
--filter: 按 good, maybe, bad 筛选检测到的个人资料,可组合使用(如 good,bad)。
--profiles: 按 detected, unknown, failed 筛选个人资料,可组合使用。
--countries: 按国家选择网站,例如 us br ru。
--type: 按类型选择网站,例如 Adult, Music。
--top: 选择排名前N的网站,例如 10, 50。
--extract: 如果可能,提取个人资料、URL和模式。
--metadata: 如果可能,提取元数据。
--trim: 裁剪过长的字符串。
--list: 列出所有可用的网站。
--headers: 以字典形式设置请求头。
--logs_dir: 更改日志目录。
--timeout: 更改每个请求之间的超时时间。
--silent: 禁止在屏幕上输出。
social-analyzer的案例应用
以下是一些基于命令行使用的具体案例,展示了如何利用不同参数组合进行调查。
基本用户搜索 (Node.js CLI):
nodejs app.js --username "johndoe"
搜索多个用户并提取元数据 (Node.js CLI):
nodejs app.js --username "johndoe,janedoe" --metadata
在排名前100的网站中搜索并提取元数据 (Python 包):
python3 -m social-analyzer --username "johndoe" --metadata --top 100
按网站类型搜索 (Python 包):
python3 -m social-analyzer --username "johndoe" --type "adult"
在特定网站上搜索,并保存日志和截图 (Python 脚本):
python3 app.py --username "johndoe" --websites "car" --logs --screenshots
