获取WiFi密码通常需要使用操作系统的命令行工具,因为Python本身无法直接访问WiFi设置。以下是在不同操作系统下使用Python获取WiFi密码的方法:
Windows
你可以使用`subprocess`模块来执行Windows命令行工具`netsh`,以获取已连接的WiFi密码。以下是一个示例代码:
import subprocessdef get_wifi_password_windows(wifi_name):获取所有无线网络配置文件result = subprocess.check_output(['netsh', 'wlan', 'show', 'profiles'])profiles = result.decode('gbk').split('\n')查找特定无线网络配置文件并获取密码for profile in profiles:if wifi_name in profile:获取安全设置security_result = subprocess.check_output(['netsh', 'wlan', 'show', 'profile', wifi_name, 'key=clear'])security_settings = security_result.decode('gbk').split('\n')提取密码for setting in security_settings:if 'Key Content' in setting:return setting.split(': ').strip()使用示例wifi_name = '你的WiFi名称'password = get_wifi_password_windows(wifi_name)print(f"WiFi密码为: {password}")
macOS
在macOS上,你可以使用`security`命令来获取WiFi密码:

import subprocessdef get_wifi_password_macos(wifi_name):获取WiFi密码result = subprocess.check_output(['sudo', 'security', 'find-generic-password', '-a', wifi_name, '-p', 'wifi'])password = result.decode('utf-8').split(':').strip()return password使用示例wifi_name = '你的WiFi名称'password = get_wifi_password_macos(wifi_name)print(f"WiFi密码为: {password}")
Linux
在Linux系统上,你可以使用`cat`命令查看`/etc/NetworkManager/system-connections/`目录下的配置文件来获取WiFi密码:
import subprocessdef get_wifi_password_linux(wifi_name):获取WiFi密码result = subprocess.check_output(['sudo', 'cat', '/etc/NetworkManager/system-connections/' + wifi_name, '|', 'grep', 'psk='])password = result.decode('utf-8').split('=').strip()return password使用示例wifi_name = '你的WiFi名称'password = get_wifi_password_linux(wifi_name)print(f"WiFi密码为: {password}")
请注意,执行这些命令通常需要管理员权限。另外,出于安全考虑,确保你了解正在获取的WiFi密码的用途,并且遵循当地法律法规
