2-3 萬 Star - 又一個持續霸榜 GitHub 查詢工具

爲什麼取這個名字,源自偵探小說中的神探 Sherlock Holmes(夏洛克 · 福爾摩斯)。

簡介

如今是互聯網時代,充斥着很多的社交網絡系統,比如知乎、微博,國外的 Twitter、Facebook 等,使用這些社交網站都需要我們建立自己的賬戶,起一個名字。有些網站不允許用戶名重複,需要自己不斷試錯去嘗試創建用戶;也有可能你想起一個獨一無二的名字,sherlock 可以幫助你。

sherlock 是一個 Python 工具,它能夠在不同的社交網站上搜索是否存在指定的用戶名,這樣的話你就可以看到自己起的用戶名有沒有重複。

sherlock 支持搜索的網站接近 300 個,包括國內比較熟悉的知乎、Gitee、LeetCode、Github 等,國外的包括 Twitter、Facebook、Tik Tok 等,支持的網站列表參考這個地址:

https://github.com/sherlock-project/sherlock/blob/master/sites.md

項目地址是:

https://github.com/sherlock-project/sherlock

安裝

1$ git clone https://github.com/sherlock-project/sherlock.git
2
3
1cd sherlock
2
3
1python3 -m pip install -r requirements.txt
2
3

簡單使用

支持的命令如下,可以使用 --help 查看:

 1$ python3 sherlock --help
 2usage: sherlock [-h] [--version] [--verbose] [--folderoutput FOLDEROUTPUT]
 3                [--output OUTPUT] [--tor] [--unique-tor] [--csv]
 4                [--site SITE_NAME] [--proxy PROXY_URL] [--json JSON_FILE]
 5                [--timeout TIMEOUT] [--print-all] [--print-found] [--no-color]
 6                [--browse] [--local]
 7                USERNAMES [USERNAMES ...]
 8
 9Sherlock: Find Usernames Across Social Networks (Version 0.14.0)
10
11positional arguments:
12  USERNAMES             One or more usernames to check with social networks.
13
14optional arguments:
15  -h, --help            查看幫助信息
16  --version             查看版本以及依賴的信息
17  --verbose, -v, -d, --debug
18                        查看debug信息
19  --folderoutput FOLDEROUTPUT, -fo FOLDEROUTPUT
20                        輸出目錄,如果要查找多個用戶名,則查找的結果會被保存到這個目錄下
21  --output OUTPUT, -o OUTPUT
22                        輸出目錄,如果只查找一個用戶名,則查找的結果會被保存到這個目錄下
23  --tor, -t             使用Tor做網絡請求
24  --unique-tor, -u      使用Tor做網絡請求,之後都用Tor
25  --csv                 創建CSV文件
26  --site SITE_NAME      只對列出的站點進行搜索。添加多個選項指定多個站點
27  --proxy PROXY_URL, -p 代理服務地址
28  --json JSON_FILE, -j  從JSON文件中加載數據
29  --timeout TIMEOUT     響應的等待時間。默認是無限期等待,對於訪問比較慢的網站,需要比較長的
30                        等待時間,另一方面,等待時間太長也會導致結果返回很慢
31  --print-all           查看所有網站的查找結果
32  --print-found         只查看存在對應用戶名的結果
33  --no-color            去掉終端顯示的顏色
34  --browse, -b          使用默認瀏覽器閱讀結果
35  --local, -l           強制使用本地的data.json文件
36
37
1python3 sherlock user123
2
3
1python3 sherlock user1 user2 user3
2
3
1docker build -t mysherlock-image .
2
3

構建成功後,執行以下命令啓動容器:

1docker run --rm -t mysherlock-image user123
2
3

執行以下命令進行搜索:

1// -v "$PWD/results:/opt/sherlock/result告訴docker在容器當前目錄下創建文件夾,並掛載到/opt/sherlock/results
2// -o /opt/sherlock/results/text.txt表示結果輸出文件
3docker run --rm -t -v "$PWD/results:/opt/sherlock/results" mysherlock-image -o /opt/sherlock/results/text.txt user123
4
5

Docker Hub 上也有了 sherlock 鏡像,可以直接使用:

1docker run theyahya/sherlock user123
2
3

還可以使用 docker-compose 運行,項目中已經包含了 docker-compose.yml 文件:

1docker-compose run sherlock -o /opt/sherlock/results/text.txt user123
2
3
本文由 Readfog 進行 AMP 轉碼,版權歸原作者所有。
來源https://mp.weixin.qq.com/s/dg6MYI8RpEXLqRAcRIdSCA