Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
socid-extractor — ⛏️ Maigret背后的提取引擎:将任何个人资料URL转换为结构化的OSINT记录,覆盖150多个网站 | Kitploit
工具/GitHubGitHub/soxoj/socid-extractor
OSINT (开源情报)侦察信息收集社会工程学网络爬虫
GitHubsoxoj/socid-extractor

socid-extractor

⛏️ Maigret背后的提取引擎:将任何个人资料URL转换为结构化的OSINT记录,覆盖150多个网站

查看仓库
1.1k1182天前Kitploit 审核通过

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

socid_extractor

PyPI version Downloads/month Total downloads License

CI GitHub stars GitHub forks

将任意公开个人资料页面转换为结构化的账户记录——用户名、显示名称、个人简介、头像、位置、注册日期、粉丝数、外部链接,以及稳定内部标识符,这些标识符能在账户改名、改版和删除后依然唯一锁定该账户。

socid_extractor 解析来自 130+ 平台的 HTML 页面和 API 响应,返回一个扁平且机器可读的账户字段字典。无需 API 密钥,无需无头浏览器——只需对响应文本进行一次函数调用。

为什么它有用

  • 稳定的跨服务 ID。 获取 GAIA ID (Google)、Facebook UID、Yandex Public ID、Instagram pk 以及数十种其他标识——这些值在用户名变更后依然存在,并允许你在泄露数据、存档和搜索引擎索引中关联账户。
  • 统一的接口。 对 Instagram、GitHub、VK、Reddit、Substack、Bluesky、TikTok 等平台均使用相同的 extract() 调用——无需为每个平台编写胶水代码。
  • 字段本体。 归一化字段名称 跨平台统一(username、fullname、created_at、is_verified 等),因此下游管道无需维护 130 种映射。
  • 久经考验。 为 Maigret 及许多其他 OSINT 工具提供支持。

安装

Python: 3.10+。

root@kitploit:~
pip install socid-extractor

若要在工作站上进行简洁的 CLI 安装:

root@kitploit:~
pipx install socid-extractor

最新开发版本:

root@kitploit:~
pip install -U git+https://github.com/soxoj/socid-extractor.git

快速开始

作为 CLI 使用:

root@kitploit:~
$ socid_extractor --url https://www.deviantart.com/muse1908
country: France
created_at: 2005-06-16 18:17:41
gender: female
username: Muse1908
website: www.patreon.com/musemercier
links: ['https://www.facebook.com/musemercier', 'https://www.instagram.com/muse.mercier/', 'https://www.patreon.com/musemercier']
tagline: Nothing worth having is easy...

作为 Python 库使用:

root@kitploit:~
import requests
import socid_extractor

r = requests.get('https://www.patreon.com/annetlovart')
print(socid_extractor.extract(r.text))
# {'patreon_id': '33913189', 'patreon_username': 'annetlovart',
#  'fullname': 'Annet Lovart',
#  'links': "['https://www.facebook.com/322598031832479', ...]"}

提示——批量运行: 传递 --skip-fetch-if-no-url-hint 可在 URL 不匹配任何已知站点提示时跳过 HTTP 请求(速度更快,但可能跳过通用引擎,如论坛模板):

root@kitploit:~
$ socid_extractor --url https://example.com/foo --skip-fetch-if-no-url-hint

支持的站点

130+ 方案——完整列表请参阅 METHODS.md。

非穷举示例:

  • 主要网络: Facebook(用户和群组页面)、Instagram、VK.com、OK.ru、Reddit、TikTok、Bluesky、Tumblr、Flickr
  • Google 生态: Google 文档/地图贡献(需 cookie)、Google Play、YouTube
  • Mail.ru: my.mail.ru 用户主页、照片、视频
  • 开发/写作平台: GitHub、Stack Overflow(HTML + API)、LeetCode、Hashnode、Medium、Substack、Paragraph、WordPress.org、Virgool
  • 论坛(通用检测器): Discourse、MediaWiki / Fandom 维基、Mastodon
  • 小众/垂直领域: Chess.com、Roblox、MyAnimeList、Scratch、Wikipedia、DailyMotion、SlideShare、Weebly、Calendly、Amazon Author、Boosty、Warpcast (Farcaster)、Fragment (TON/Telegram)、Rarible、CSSBattle、lnk.bio、Spatial、TwitchTracker、Max (max.ru)

……以及许多其他站点。

数据示例请参见 tests/test_e2e.py;解析逻辑请参见 socid_extractor/schemes.py;字段本体请参见 FIELDS.md。

使用场景

  • 从个人资料入手,获取你能看到的一切信息。 一次调用即可返回可见信息以及平台在后台使用的隐藏内部 ID。背景阅读:Week in OSINT — Getting a grasp on Google IDs。
  • 跨改名、改版和删除跟踪账户。 稳定 ID(GAIA、FB UID、Yandex Public ID、Instagram pk 等)让你即使在所有可见字段都发生变化后仍能重新识别同一人。背景:Aware Online — User IDs in social-media investigations。
  • 通过跨服务 UID 进行搜索。 一旦获得稳定标识符,你就可以关联到:
    • SQL/泄露数据库(论坛转储、泄露数据),其中 UID 是连接键,
    • 捕获了包含该 UID 的 URL 的 Google / Yandex / archive.org 索引。
  • 为下游 OSINT 工具提供数据。 归一化记录比每个站点的爬虫更容易被摄取——被 Maigret 及类似工具用于丰富数据。

商业用途

开源版本的 socid_extractor 使用 MIT 许可证,可免费用于商业用途,无任何限制——但页面解析器会随着平台更改 HTML 和 API 而失效,因此需要主动维护。

对于严肃的商业用途——如果你需要维护的私有插件包(包含额外解析器)或托管提取 API——请联系:📧 [email protected]

  • 私有解析器插件——在公开的 150+ 站点基础上增加 100+ 额外检查,随平台变化而更新(与公开开源数据库分开维护)
  • 提取 API——将 socid_extractor 集成到你的产品中

SOWEL 分类

对应于以下 SOWEL 技术:

  • SOTL-1.4. 分析内部标识符
  • SOTL-11.1. 检查过时和未使用的功能

使用 socid_extractor 的工具

  • Maigret —— 强大的用户名检测器,能从 3000+ 站点找到的账户中生成包含所有可用信息的报告。
  • TheScrapper —— 从网站抓取电子邮件、电话号码和社交媒体账户。
  • InfoHunter —— 开源 OSINT 工具,用于在线搜索、收集和分析信息。
  • YaSeeker —— 通过登录名/邮箱收集关于 Yandex 账户的所有可用信息。
  • Marple —— 针对给定用户名抓取搜索引擎结果。

测试

从 pyproject.toml 安装测试额外依赖,然后运行 pytest:

root@kitploit:~
pip install '.[test]'   # pytest, pytest-rerunfailures, pytest-xdist
python3 -m pytest tests/test_e2e.py -n 10 -k 'not cookies' -m 'not github_failed and not rate_limited'

如果你还想要 flake8 / mypy / black(CI 使用的完整工具集),请改用 pip install '.[dev]'。

每个新方案必须在 tests/test_e2e.py 中有一个 e2e 测试,命中真实的 URL/API。还需要包含内联 fixture 的单元测试(tests/test_socid_improvements.py),但这不替代 e2e 覆盖。详情请参阅 docs/testing-and-ci.md。

开发者文档(架构、模块、CI)位于 docs/。

贡献

如果你想添加新方案或修复任何问题,请参阅贡献指南。

下载工具