站点品牌标识

北京先航科技有限公司 XNAVOR 北京先航科技有限公司 Beijing Xnavor Technology Company Limited
教程中心 / 网络安全 / Sherlock 零基础使用教程:输入一个用户名,查它在 400 多个网站上有没有账号
Sherlock 零基础使用教程封面:输入一个用户名,查它在 400 多个网站上有没有账号

Sherlock 零基础使用教程:输入一个用户名,查它在 400 多个网站上有没有账号

网络安全 入门 Beginner 实操教程 Sherlock 🕒 2026-11-09 ⏱ 8 分钟 👥 想确认自己的用户名有没有在不记得的网站上注册过的人;做品牌保护、想查自己的品牌名或用户名有没有被冒用的人;做安全研究、需要快速核查一组用户名分布情况的人;对开源情报工具感兴趣、想亲手跑一遍的人。
官方资源链接 以下链接均来自官方第一方来源,点击可直接打开

一、这是什么

Sherlock 是一个开源的命令行工具:你给它一个用户名,它就去 400 多个社交网站和网络平台上逐个查询,告诉你这个用户名在哪里注册过账号,并把找到的账号链接汇总成一份结果文件。它在 2026 年 11 月 8 日登上 GitHub 当日热门榜第 1 名,核实时主仓库已有约 10.36 万个 star,当日新增约 2,373 个,许可证为 MIT。

这个项目从 2018 年就开始维护了,是开源情报(OSINT)领域最常用的用户名搜索工具之一。它的工作原理很直接:内置了一份覆盖 400 多个站点的规则清单(data.json),对每个站点按规则构造出「用户名对应的个人主页地址」,再逐个请求验证该页面是否存在,最后汇总成报告。整个过程不需要你注册任何账号,也不需要 API 密钥。

它适合这些人:想确认自己的用户名有没有在不记得的网站上注册过的人;做品牌保护、想查自己的品牌名或用户名有没有被冒用的人;做安全研究、需要快速核查一组用户名分布情况的人;以及对开源情报工具感兴趣、想亲手跑一遍的人。

二、开始前先确认

  • 先装好 Python 3:Sherlock 是 Python 写的工具,本机需要有 Python 3 才能安装。打开终端执行 python3 --version,能印出版本号即可;没有的话先去 Python 官网下载安装。
  • 建议装 pipx:官方推荐用 pipx 安装(比 pip 更不容易污染系统环境)。没有 pipx 也可以用 pip 或 uv,效果一样。
  • 只查自己或有正当理由的用户名:查自己的用户名、自己的品牌名,或者经授权做安全核查,这是这个工具的正当用途。不要拿它去搜别人的真实身份信息、做人肉搜索或骚扰跟踪。
  • 结果要逐个核实:Sherlock 只是按规则判断「这个地址存在」,同名不同人、已被注销又被回收的用户名都可能造成误报。看到结果后,一定要逐个点开链接确认。
  • 默认不查 NSFW 站点:不加参数时,Sherlock 会跳过内置清单里的 NSFW 站点;只有加上 --nsfw 才会包含它们。
  • 查得多、速度取决于网络:一次搜索要请求 400 多个站点,默认每个请求最多等 60 秒,完整跑完通常需要几分钟,耐心等它跑完。

三、操作步骤

步骤 1:安装 Sherlock

官方推荐用 pipx 安装,在终端执行:

pipx install sherlock-project

没有 pipx 的话,用 pip 也一样(建议加 --user,装到用户目录):

pip install --user sherlock-project

macOS 用户也可以用 Homebrew 安装:

brew install sherlock

Fedora 用户可以直接用系统包管理器:

sudo dnf install sherlock-project

装好后验证一下,执行:

sherlock --version

能印出 Sherlock: Find Usernames Across Social Networks (Version 0.16.0) 之类的版本信息,就说明安装成功,可以开始用了。

图 1:用 pipx 安装 Sherlock 并验证版本的示意

图 1:用 pipx 安装 Sherlock 并验证版本的示意。图片为 AI 生成的操作示意图,实际界面以终端输出为准。

步骤 2:第一次搜索——查一个用户名

最简单的用法就是直接在命令后面跟用户名,例如查 user123:

sherlock user123

Sherlock 会逐个查询 400 多个站点,终端实时滚动显示每个站点的结果:前面标 [+] 的表示找到了账号,后面会附上链接;标 [-] 的表示这个用户名在该站点不存在。跑完后,当前目录下会生成一个 user123.txt,里面保存了所有找到的账号链接。

想一次查多个用户名也很简单,空格隔开就行:

sherlock user1 user2 user3

多用户名时,每个用户名的结果会分别保存成对应的 txt 文件。

还有一个很实用的小技巧:用户名里可以用 {?} 做通配符,Sherlock 会自动把 {?} 换成 _、-、. 再各查一遍,帮你覆盖用户名的常见变体:

sherlock user{?}123
图 2:搜索一个用户名,终端实时显示各站点的查询结果的示意

图 2:搜索一个用户名,终端实时显示各站点的查询结果的示意。图片为 AI 生成的操作示意图,实际界面以终端输出为准。

步骤 3:限定站点、导出结果、提高效率

默认全量搜索要跑 400 多个站点,比较耗时。下面这几个参数能让你用得更顺手:

只查指定站点:用 --site 限定只查某几个站点,可以重复使用:

sherlock --site GitHub --site Twitter user123

导出 CSV 或 Excel:加 --csv 生成 CSV 文件,加 --xlsx 生成 Excel 文件,方便后续筛选和存档:

sherlock --csv --xlsx user123

只显示找到的结果:默认会输出全部站点的查询情况,只想看找到的账号时加上 --print-found:

sherlock --print-found user123

调超时时间:某个站点响应慢、老是超时时,可以用 --timeout 调大等待时间(单位是秒,默认 60):

sherlock --timeout 120 user123

在浏览器里打开全部结果:想逐个点开核实时,加上 --browse,跑完后会自动在默认浏览器里打开所有找到的账号页面:

sherlock --browse user123

用代理:网络受限、需要走代理时,用 --proxy 指定代理地址:

sherlock --proxy socks5://127.0.0.1:1080 user123

不想安装也能用 Docker:本机不想装 Python 环境时,直接跑官方镜像,一次性搜索不需要安装任何东西:

docker run --rm -t sherlock/sherlock user123
图 3:限定站点并导出 CSV/Excel 结果的示意

图 3:限定站点并导出 CSV/Excel 结果的示意。图片为 AI 生成的操作示意图。

四、恢复办法

Sherlock 只是一个命令行工具,不改系统设置,不留后台进程,遇到问题基本都能马上回到干净状态:

  • 终端提示 sherlock: command not found:安装没成功或安装路径不在 PATH 里。先确认 pipx install sherlock-project 是否成功执行;用 pip 安装时确认加了 --user,并检查 ~/.local/bin 是否在 PATH 中。
  • 终端提示 pipx: command not found:本机没有 pipx,改用 pip install --user sherlock-project 安装,或先安装 pipx 再重试。
  • 搜索中途大量站点超时:先检查本机网络是否正常;单个站点超时可以加 --timeout 120 放宽等待时间;也可以先用 --site 只查几个重点站点,确认工具本身工作正常。
  • 结果文件找不到:默认结果保存在执行命令时的当前目录下,文件名为 <用户名>.txt;用 --csv 或 --xlsx 时会额外生成同名 csv/xlsx 文件。检查一下是不是在别的目录下执行的命令。
  • 想换个用户名重新查:直接换用户名再跑一次命令即可,旧的结果文件不会被自动删除,需要手动清理。
  • 不想用了:pipx 安装的执行 pipx uninstall sherlock-project;pip 安装的执行 pip uninstall sherlock-project;Docker 方式本身不留任何东西,删除生成的 txt/csv 文件即可。

五、注意事项(必读)

  • 只查自己或有正当理由的用户名:自己的用户名、自己的品牌名、经授权的安全核查,这是正当用途。不要用它去搜别人的真实身份、做人肉搜索、骚扰或跟踪他人。
  • 结果必须逐个核实:Sherlock 只判断「这个地址存在」,同名不同人、已注销又被回收的用户名都会造成误报。不要把搜索结果直接当成「这个人就是这个账号的主人」。
  • 遵守各平台的服务条款:Sherlock 是按公开规则请求各站点的公开页面,频繁、大批量查询可能触发站点的限流或封禁。合理使用,不要短时间内高频刷请求。
  • 默认不含 NSFW 站点:不加参数时 NSFW 站点不在检查范围内;只有明确加上 --nsfw 才会包含它们。
  • 不要只看数量:一次搜索 400 多个站点,跑完需要几分钟;只关心重点平台时,先用 --site 限定范围,速度会快很多。
  • 它还很新、变化快:虽然项目从 2018 年就开始维护,但站点规则清单一直在更新,个别站点的规则可能失效或调整,遇到与本教程不一致的地方,以官方 README 与文档为准。
  • 查询结果只保存在本地:找到的账号链接默认写进当前目录的 txt 文件,不会上传到任何地方;用完记得妥善保管或删除。

六、官方资源链接

七、常见问题

Sherlock 是免费的吗?

是。项目采用 MIT 许可证,开源免费;查询的是各站点的公开页面,不需要注册账号,也不需要 API 密钥。

一次搜索要多久?

取决于网络状况。默认要逐个请求 400 多个站点,每个请求最多等 60 秒,完整跑完通常需要几分钟;用 --site 限定站点可以大幅缩短时间。

结果保存在哪里?

默认保存在执行命令时的当前目录下,文件名为 <用户名>.txt;加 --csv 或 --xlsx 会额外生成同名表格文件。

它能查到手机号、邮箱或真实姓名吗?

不能。Sherlock 只查「这个用户名在哪些网站上存在」,不查手机号、邮箱、真实姓名等个人信息,也不会绕过登录去看非公开内容。

查到的账号一定是同一个人吗?

不一定。不同人在不同网站上可能用同一个用户名,Sherlock 只判断地址存在,不做身份关联。务必逐个点开链接核实。

没有 Python 能用吗?

能。用 Docker 方式,不需要安装 Python:docker run --rm -t sherlock/sherlock user123,一次搜索、即用即走。

{?} 通配符怎么用?

用户名里写 {?},Sherlock 会自动把它分别替换成 _、-、. 再各查一遍,例如 sherlock user{?}123 会覆盖 user_123、user-123、user.123 三种变体。

它和直接在搜索引擎里搜用户名有什么不同?

搜索引擎只能搜到被收录的公开页面;Sherlock 是按内置规则逐个站点主动验证,对没有被搜索引擎收录的小众站点也一样能查到,而且结果会汇总成一份文件,方便存档和核对。