⛏️ Extract accounts info from personal pages on various sites for OSINT purpose
GPL-3.0 License
Extract information about a user from profile webpages / API responses and save it in machine-readable format.
As a command-line tool:
$ 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...
Without installing:
$ ./run.py --url https://www.deviantart.com/muse1908
As a Python library:
>>> import socid_extractor, requests
>>> r = requests.get('https://www.patreon.com/annetlovart')
>>> socid_extractor.extract(r.text)
{'patreon_id': '33913189', 'patreon_username': 'annetlovart', 'fullname': 'Annet Lovart', 'links': "['https://www.facebook.com/322598031832479', 'https://www.instagram.com/annet_lovart', 'https://twitter.com/annet_lovart', 'https://youtube.com/channel/UClDg4ntlOW_1j73zqSJxHHQ']"}
$ pip3 install socid-extractor
The latest development version can be installed directly from GitHub:
$ pip3 install -U git+https://github.com/soxoj/socid_extractor.git
More than 100 methods for different sites and platforms are supported!
...and many others.
You can also check tests file for data examples, schemes file to expore all the methods.
This tool uses the following OSINT techniques:
Maigret - powerful namechecker, generate a report with all available info from accounts found.
TheScrapper - scrape emails, phone numbers and social media accounts from a website.
InfoHunter - An open source OSINT tool that allows you to search, collect and analyze information online to get a complete picture of the person or company you are interested in.
YaSeeker - tool to gather all available information about Yandex account by login/email.
Marple - scrape search engines results for a given username.
python3 -m pytest tests/test_e2e.py -n 10 -k 'not cookies' -m 'not github_failed and not rate_limited'
Check separate page if you want to add a new methods of fix anything.