The author | | vlad source vlad (public number: fulade_me)
I don’t know if there are any friends like me, often in the registration of an account when entering a nickname will often return a “user name already exists”, and then try several nicknames before success. The tool introduced today can help us quickly search each major website has our own user nickname, and it can also help us quickly query the same user name are registered with which websites.
Introduction to the
Sherloc, which already has a 24K Star count on Github, is named Sherlock after the English name of the film Sherlock. Sherlock is mainly developed using Python3, which makes it more flexible and can run on Windows, Mac and Linux operating systems.
Installation steps
Let’s use Linux as an example
# Download the source from Github
$ git clone https://github.com/sherlock-project/sherlock.git
Enter the source folder
$ cd sherlock
Dependencies required by the installation
$ python3 -m pip install -r requirements.txt
Copy the code
Thanks to Python’s excellent package management tools, our installation is very simple and convenient, requiring only a few commands.
Method of use
$ python3 sherlock --helpusage: sherlock [-h] [--version] [--verbose] [--folderoutput FOLDEROUTPUT] [--output OUTPUT] [--tor] [--unique-tor] [--csv] [--site SITE_NAME] [--proxy PROXY_URL] [--json JSON_FILE] [--timeout TIMEOUT] [--print-all] [--print-found] [--no-color] [--browse] [--local]
USERNAMES [USERNAMES ...]
Sherlock: Find Usernames Across Social Networks (Version 0.14.0)
optional arguments:
-h, --help # Show help page
--version Print the current version number and project dependencies
--verbose, -v, -d, --debug # Log output level
--folderoutput FOLDEROUTPUT, -fo FOLDEROUTPUT If you need to query multiple usernames at the same time, you can define the folder path to pass in to save the results here
--output OUTPUT, -o OUTPUT Select * from 'select'; select * from 'select'
--tor, -t To send requests through Tor, Tor must be installed in the system directory
--unique-tor, -u # Send requests through Tor and use a new connection each time
--csv Create a CVS file
--site SITE_NAME The name of the site to be queried can be passed as multiple
--proxy PROXY_URL, -p PROXY_URL # proxy used
--json JSON_FILE, -j JSON_FILE The input format is JSON. Json files obtained from the network are supported
--timeout TIMEOUT # timeout
--print-all Output all results including sites with no nicknames found
--print-found Print only the information found
--no-color The console does not have colored output
--browse, -b Open all search results using the default browser
--local, -l # Force the use of local data.json files
Copy the code
It is also very simple to search for a single name by typing on the command line:python3 sherlock username
Let’s say we searchThe founding of sichuan
The search results are as follows:
Search for multiple names python3 Sherlock Tony Heisenberg Johnson
[*] Checking username tony on:
[+] 3dnews: http://forum.3dnews.ru/member.php?username=tony
[+] 7Cups: https://www.7cups.com/@tony
[+] 9GAG: https://www.9gag.com/u/tony
[+] About.me: https://about.me/tony
[+] Academia.edu: https://independent.academia.edu/tony
[+] AllTrails: https://www.alltrails.com/members/tony
....
[+] Anobii: https://www.anobii.com/tony/profile
[+] Apple Discussions: https://discussions.apple.com/profile/tony
[+] Archive.org: https://archive.org/details/@tony
[+] Asciinema: https://asciinema.org/~tony
[+] AskFM: https://ask.fm/tony
[*] Checking username heisenberg on:
[+] 9GAG: https://www.9gag.com/u/heisenberg
[+] About.me: https://about.me/heisenberg
[+] Academia.edu: https://independent.academia.edu/heisenberg
[+] AllTrails: https://www.alltrails.com/members/heisenberg
[+] Anobii: https://www.anobii.com/heisenberg/profile
[+] Archive.org: https://archive.org/details/@heisenberg
...
[+] Asciinema: https://asciinema.org/~heisenberg
[+] AskFM: https://ask.fm/heisenberg
[+] Audiojungle: https://audiojungle.net/user/heisenberg
[+] BLIP.fm: https://blip.fm/heisenberg
[+] BOOTH: https://heisenberg.booth.pm/
[*] Checking username johnson on:
[+] 7Cups: https://www.7cups.com/@johnson
[+] 9GAG: https://www.9gag.com/u/johnson
[+] About.me: https://about.me/johnson
[+] Academia.edu: https://independent.academia.edu/johnson
[+] AllTrails: https://www.alltrails.com/members/johnson
...
[+] Anobii: https://www.anobii.com/johnson/profile
[+] Archive.org: https://archive.org/details/@johnson
[+] Audiojungle: https://audiojungle.net/user/johnson
[+] BLIP.fm: https://blip.fm/johnson
[+] Bandcamp: https://www.bandcamp.com/johnson
Copy the code
Multiple search results are presented in order
Support the Docker
The author also added support for Docker, we just need to execute docker build-t mySherlock-image. You can use sherklock in Docker. More information about how to use Docker can be found on the Github homepage
Realize the principle of
The author is to request the URL address of each user, if there is a result, it means that there is this nickname, if there is no result or 404, it means that there is no current user. Such as request: https://www.about.me/tony, you can request to the result is the nickname, if there is no corresponding return is not the nickname.