ARTICLE DETAIL

资讯详情

深耕网站视觉设计与运营推广的一线实战洞察。

Social Analyzer:跨平台用户画像聚合的完整实战指南

Social Analyzer:跨平台用户画像聚合的完整实战指南 Social Analyzer跨平台用户画像聚合的完整实战指南【免费下载链接】social-analyzerAPI, CLI, and Web App for analyzing and finding a persons profile in 1000 social media \ websites项目地址: https://gitcode.com/GitHub_Trending/so/social-analyzer在跨平台调查中同一个用户往往在不同网站使用略有差异的账号名johndoe、john_doe、johndoe123人工逐一排查效率极低。Social Analyzer 是一款开源情报OSINT工具通过跨平台数据聚合技术用一个用户名批量探测 1000 个社交网站并输出带置信度评分的账号清单。本文拆解其内部检测机制并给出从安装到定制平台的完整上手路径。从单个用户名到跨平台账号清单Social Analyzer 能做什么当前版本为 v2.0.32见 package.json提供 NodeJS CLI、Web 应用与 Python 包三种调用方式。核心能力多模式账号探测fast 模式仅用 HTTP 请求抓取页面源码做文本匹配slow 模式驱动 Firefox 渲染页面并叠加 OCR 识别解决部分网站需要 JS 渲染才能看到用户名的漏检问题0-100 置信度评分modules/engine.js 按 normal/advanced/ocr 多层检测结果累加计分区分确认存在/可能/不存在减少误报让 good/maybe/bad 过滤可用元数据与模式提取modules/extraction.js 解析页面 meta 标签与正则模式抽取姓名、邮箱等线索从找到账号延伸到收集身份信息关系图谱可视化结合 public/graph.html 与 ixora 库把提取到的元数据渲染成力导向图直观呈现同一人的多平台关联按国家/类型/排名圈定范围data/sites.json 中每个站点带 country、type、global_rank 字段把全库扫描缩小到目标区域省时降噪三步扫描机制用户名如何变成置信度评分整个流程可拆为选站 → 探测 → 评分输出三个阶段全部由 modules/ 下的模块协作完成。阶段一站点圈定与并发探测。app.js 解析--username、--websites、--top、--countries等参数后从 data/sites.json 的 999 条站点记录中筛选目标站URL 模板含{username}占位符。modules/fast-scan.js 以 15 个并发请求逐站抓取页面源码对超时或失败的站点自动重试两轮代码中为三次find_username_normal_wrapper调用保证弱网下的覆盖率。阶段二多层检测。modules/engine.js 对每个站点执行detections数组里定义的检测项normal 型直接在 HTML 源码中匹配替换了{username}的特征串advanced 型在 html-to-text 转换后的纯文本中匹配ocr 型用 tesseract.js 对截图做文字识别。共享检测规则如 Mastodon 的页面不存在特征统一存放在 sites.json 的shared_detections中被多站点复用。阶段三评分与输出。modules/helper.js 定义了检测阈值high 档位要求至少 1 条命中且 2 条检测通过才标记good: true最终结果按 rate 排序附带 link、title、country、rank 等字段。开启--metadata时extraction.js 用 cheerio 加载页面过滤 viewport、charset 等噪声后提取 property/name/itemprop 元数据正则模式extract字段则抽取链接与邮箱。// engine.js三种检测类型对应不同数据源 if (detection.type ocr screen_shot ! options.includes(FindUserProfilesSlow)) { // tesseract.js 识别截图文本后匹配特征串 } else if (detection.type normal source ! ) { // HTML 源码中包含 detection.string已替换 {username} }三步跑通首次跨平台扫描步骤 1安装并安装依赖。需要 Node.js 环境slow 模式另需 Firefox 与 tesseract-ocr。git clone https://gitcode.com/GitHub_Trending/so/social-analyzer cd social-analyzer npm install # 安装 cheerio、selenium-webdriver、tesseract.js 等依赖步骤 2执行 fast 模式扫描。只查 Alexa 排名前 50 的站点最快验证链路nodejs app.js --username johndoe --top 50 # --top 50 表示只扫描排名前50的网站预期输出按置信度排序的表格列含 link、rate、title、countryrate 越接近 100 越可能是真实账号。步骤 3多账号关联 元数据提取。逗号分隔多个变体名实现关联扫描--metadata抽取页面元数据--output json便于后续程序处理nodejs app.js --username johndoe,john_doe,johndoe123 --metadata --output json偏好图形界面可跳过 CLIdocker-compose up -d启动 docker-compose.yml 定义的服务栈含 Selenium Grid 支撑 slow 模式浏览器访问http://0.0.0.0:9005/app.html提交任务结果图谱由 public/graph.html 渲染。三个扩展入口与使用边界常见定制均集中在配置数据与检测层无需改动主流程添加新平台编辑 data/sites.json按url含{username}占位、detections、type、country、global_rank结构新增站点条目自定义检测规则在 modules/engine.js 的detect_logic中扩展检测类型或向 sites.json 的shared_detections添加可复用的特征串扩展元数据提取在 modules/extraction.js 中新增 meta 属性过滤规则或在站点条目的extract数组里追加正则模式。需要注意该工具定位为本地调查工具无访问控制不应作为公开服务部署OCR 与截图能力依赖本机 Chrome/Firefox 与 tesseract 环境探测目标网站时请遵守当地法律与平台条款仅用于授权调查场景。源码与完整说明见仓库 README.md。【免费下载链接】social-analyzerAPI, CLI, and Web App for analyzing and finding a persons profile in 1000 social media \ websites项目地址: https://gitcode.com/GitHub_Trending/so/social-analyzer创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表