How to Get WiFi Passwords With Python?

How to Get WiFi Passwords With Python
password cracker technology image

Today we will learn how can we Get WiFi Passwords With Python. Sometimes we forget our own connected wifi password. And when someone asks for the password to connect with the same network we decline. In this article, we are going to learn how we can see wifi passwords with python.

What you’ll learn?

  1. Explanation of getting wifi passwords with python
  2. How to run cmd commands using the Python program
  3. About subprocess module
  4. The stepwise flow of code
  5. Source code for getting wifi passwords with python
  6. Output

Explanation: Get Wifi Passwords with python

In order to get wifi passwords, we are going to use the subprocess module of Python which makes it easy to check the connected wifi passwords by allowing us to run (cmd)command prompt commands inside our program. We have two netsh commands using them we can easily see wifi passwords.

Logic is very simple, we will run cmd commands to check wifi passwords inside our program with the help of the subprocess module as mentioned above.

The two cmd commands to check connected wifi passwords are as follows:

netsh wlan show profile
netsh wlan show profile PROFILE-NAME key=clear

The first command is used to show the profiles of the connected wifi while 2nd is used to show the password of the wifi which you want to know.

Here we will use these two commands in our own way to Get WiFi Passwords With Python.

Run cmd commands for wifi passwords in python

As mentioned earlier, we are going to use the subprocess module to run cmd commands in our python program. We will use a method from the subprocess module called check_output to run both cmd commands.

The stepwise flow of code

The main intention behind this section is that if you have a good knowledge of python then you’ll be able to make this get wifi passwords with the python program on your own without looking at our source code. So, the steps of implementation are as follows:

Step1: Import the subprocess module.

Step2: Run the 1st cmd command using subprocess.check_output method and store the profile data in a variable.

Step3: Convert the profile data into a list.

Step4: Iterate over the list and run the second command to check the passwords.

Step5: Store the passwords and print

Source Code

# first we will import the subprocess module
import subprocess

# now we will store the profiles data in "data" variable by 
# running the 1st cmd command using subprocess.check_output
data = subprocess.check_output(['netsh', 'wlan', 'show', 'profiles']).decode('utf-8').split('\n')

# now we will store the profile by converting them to list
profiles = [i.split(":")[1][1:-1] for i in data if "All User Profile" in i]

# using for loop in python we are checking and printing the wifi 
# passwords if they are available using the 2nd cmd command
for i in profiles:
    # running the 2nd cmd command to check passwords
    results = subprocess.check_output(['netsh', 'wlan', 'show', 'profile', i, 
                        'key=clear']).decode('utf-8').split('\n')
    # storing passwords after converting them to list
    results = [b.split(":")[1][1:-1] for b in results if "Key Content" in b]
    # printing the profiles(wifi name) with their passwords using 
    # try and except method 
    try:
        print ("{:<30}|  {:<}".format(i, results[0]))
    except IndexError:
        print ("{:<30}|  {:<}".format(i, ""))

We have added comments to every single line of code. We hope that it will help you a lot now as well as after some months when you look at this code without reading the explanation. One more thing, you are free to use this code but don’t forget to add your own styling to this.

Output

output
Output for wifi password program

Thanks for reading!

If you found this article useful please support us by commenting “nice article” and don’t forget to share it with your friends and enemiesIf you have any queries feel free to ask in the comment section.

Happy Coding!

Also read:

Share:

Author: Harry

Hello friends, thanks for visiting my website. I am a Python programmer. I, with some other members, write blogs on this website based on Python and Programming. We are still in the growing phase that's why the website design is not so good and there are many other things that need to be corrected in this website but I hope all these things will happen someday. But, till then we will not stop ourselves from uploading more amazing articles. If you want to join us or have any queries, you can mail me at admin@copyassignment.com Thank you