Python for OSINT: Find If a Username is listed as an Email or Social Media Account

This post will explain how to use the profil3r tool to automatically search if a given username or real name is used in various social media or an email address for gmail, yahoo, or hotmail.

If you already have accounts on Github and Gitpod, login and jump to step 3.

Step 1 – (the hardest) – Click here and sign up for an account on Github . Sorry, that is more than one step but the process is simple and it gets easy afterward.

Step 2 – Login to Gitpod. You do not need to sign up for Gitpod if you already have a Github account. Go here ( and you will see an option on the left to sign in with your Github account even though you don’t have a Gitpod account. See below:

Step 3 -Go to and then click on green button that says Gitpod. You’ll then have to wait for a bit.

If the gitpod button does not appear on this page for you, you can alternatively paste the following url into a new tab:

Step 4 -That brings you to Gitpod where it will set up a virtual machine.

Step 5 – see where it says “gitpod /workspace/Profil3r $” and next to it type

sudo python3 install

Step 6 – hit enter, wait for the install to complete. Then, as shown below, type “sudo python3 -p [USERNAME]”

I am going to use the example username “usernameforme”, so I typed

sudo python3 -p usernameforme

Step 7 – Hit Enter and then this screen appears.

If you had entered a person’s name “john smith”, you could choose here if you want the script to search with any, none, or all of the separators listed. as noted in the instructions, move the little yellow arrow up or down with the direction arrows on your keyboard. Choose an option by hitting “space” and unchoose it by hitting the same button. you can also check/choose all options with the “a” button or uncheck them all with the “i” button.

Or you can do nothing at all. Regardless of what you choose, (including nothing) hit enter when you are done.

Step 8 – Now you have a series of options for what you want the script to search. Feel free to hit “a” to choose all, and then hit enter.

Step 9 – wait and get your results. For each version of the username or name (from Step 7) it will check each website listed. Below we see there are several social media sites with the username “usernameforme” but nothing on Soundcloud.

The possible email addresses might be a bit confusing. The script searches if there are email addresses for gmail, yahoo, or hotmail with that username. If it says [SAFE] next to the email address, that means it did NOT find evidence that the email address exists.

That is because the script searches for instances where the email address is listed in a data breach. If the email address is not in a data breach, the website tells the script that the email address is “safe”. For our purposes, if the email address WERE in a data breach, that would prove that it does exist.

Feel free to follow up researching the email address on a website like

That’s it! You’re Done!

Update: Multiple Usernames

It is also possible to run multiple usernames at once, but be careful not to overload it.

To add more usernames, run the same command but add additional usernames separated by commas, like below:

sudo python3 -p username1, username2, username3

See the post (Find A Twitter Account’s…) that identifies the Twitter accounts most commonly mentioned by a given account.

You can then take the most commonly mentioned accounts and research them all with


2 thoughts on “Python for OSINT: Find If a Username is listed as an Email or Social Media Account

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s