Windows10系统使用Python查看本机已存储的WiFi密码
Windows10系统使用Python查看本机已存储的WiFi密码
import re
import subprocess
name_list = []
# 定义要执行的命令
command = 'netsh wlan show profiles'
# 使用subprocess.run执行命令,并捕获输出
result = subprocess.run(command, shell=True, text=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
# 检查命令是否执行成功
if result.returncode == 0:
# 打印命令的输出结果
for line in result.stdout.splitlines():
if '所有用户配置文件' in line:
match = re.search(r':\s*(.*)', line)
wifi_name = match.group(1)
# 将获取到的WiFi名称写入存储的目的列表
name_list.append(wifi_name)
else:
# 如果命令执行失败,打印错误信息
print("Error executing command:", result.stderr)
counter_password = 0
counter_open = 0
for info in name_list:
if ' ' in info:
command_password = f'netsh wlan show profiles name="{info}" key=clear'
else:
command_password = f"netsh wlan show profiles {info} key=clear"
# 使用subprocess.run执行命令,并捕获输出
result_password = subprocess.run(command_password, shell=True, text=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
# 检查命令是否执行成功
if result_password.returncode == 0:
for lines in result_password.stdout.splitlines():
if '关键内容' in lines:
matchs = re.search(r':\s*(.*)', lines)
password_info = matchs.group(1)
print(f'WiFi名称:{info} 的密码是:{password_info}')
counter_password += 1
elif '开放式' in lines:
print(f'WiFi名称:{info} 的密码是:开放WiFi,无密码!')
counter_open += 1
else:
# 如果命令执行失败,打印错误信息
print("Error executing command:", result_password.stderr)
print(f'本机已存储的WiFi总数是:{len(name_list)} \n加密无线WiFi的个数是:{counter_password}\n未加密无线WiFi的数量是:{counter_open}')
Code Download:
1 import re 2 import subprocess 3 4 5 name_list = [] 6 # 定义要执行的命令 7 command = 'netsh wlan show profiles' 8 9 # 使用subprocess.run执行命令,并捕获输出 10 result = subprocess.run(command, shell=True, text=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE) 11 12 # 检查命令是否执行成功 13 if result.returncode == 0: 14 # 打印命令的输出结果 15 for line in result.stdout.splitlines(): 16 if '所有用户配置文件' in line: 17 match = re.search(r':\s*(.*)', line) 18 wifi_name = match.group(1) 19 # 将获取到的WiFi名称写入存储的目的列表 20 name_list.append(wifi_name) 21 else: 22 # 如果命令执行失败,打印错误信息 23 print("Error executing command:", result.stderr) 24 25 26 counter_password = 0 27 counter_open = 0 28 for info in name_list: 29 if ' ' in info: 30 command_password = f'netsh wlan show profiles name="{info}" key=clear' 31 else: 32 command_password = f"netsh wlan show profiles {info} key=clear" 33 # 使用subprocess.run执行命令,并捕获输出 34 result_password = subprocess.run(command_password, shell=True, text=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE) 35 # 检查命令是否执行成功 36 if result_password.returncode == 0: 37 for lines in result_password.stdout.splitlines(): 38 if '关键内容' in lines: 39 matchs = re.search(r':\s*(.*)', lines) 40 password_info = matchs.group(1) 41 print(f'WiFi名称:{info} 的密码是:{password_info}') 42 counter_password += 1 43 elif '开放式' in lines: 44 print(f'WiFi名称:{info} 的密码是:开放WiFi,无密码!') 45 counter_open += 1 46 else: 47 # 如果命令执行失败,打印错误信息 48 print("Error executing command:", result_password.stderr) 49 50 51 print(f'本机已存储的WiFi总数是:{len(name_list)} \n\t加密无线WiFi的个数是:{counter_password}\n\t未加密无线WiFi的数量是:{counter_open}')

浙公网安备 33010602011771号