时间:2021-05-23
设定一个场景,假如我忘记了自家的wifi密码,这时候小伙伴来家里跟我开黑,问我wifi密码是多少?我就抓住了这个小秀一波的机会。
上才艺:
按下win+R键,输入CMD打开DOS窗口,然后输入以下命令查看电脑里配置过的wifi。
netsh wlan show profiles这是电脑连过的wifi,假设我家里的wifi是CMCC-CMCC,接下来我需要查看CMCC-CMCC的信息,上代码:
netsh wlan show profiles CMCC-CMCC可以看到,安全密钥这里显示的是存在,说明这个wifi是有密码的,接下来,我们用在上面的代码基础上加上"key=clear",密码就会显示了。(不用担心这个clear,不会删除你的wifi密码的,只是一个显示作用)
netsh wlan show profiles CMCC-CMCC key=clear这个就是我的wifi密码了!
首先导入两个库subprocess、re
我们建立一个通道来执行DOS命令,列出所有的连接过的wifi,并且用profile_names来存下这些WIFI名称,输出采用字典的形式,每个wifi名和密码为一个字典中的键值对,并且先定义一个列表用来存下这些字典。
command_output = subprocess.run(['netsh','wlan','show','profiles'],capture_output= True).stdout.decode(encoding='gbk')profile_names = re.findall('所有用户配置文件 :(.*)\r',command_output)#返回一个列表wifi_list=list()将下一个命令即“查看wifi是否存在密钥”写进代码
if len(profile_names) != 0: for name in profile_names: wifi_profile = dict() profile_info = subprocess.run(['netsh','wlan','show','profiles',name],capture_output=True).stdout.decode(encoding='gbk')如果安全密钥的内容不是存在的话,说明wifi是没有密码的,我们就不用去瞎搞了,直接continue了。如果是存在的话,我们才进行下一步操作,就是进行下一个命令:加上key=clear,查看密码。这里解释一下为什么要用name[1:],可能是因为编码的原因,通过正则得来的name前面包含了一个空格,如果直接用这个name的话,电脑会告诉你没有这个wifi。例如上文中,我的wifi是“CMCC-CMCC”,当是通过正则获取的wifi名就是“ CMCC-CMCC”多了一个空格。电脑会以为这两个东西它不一样。。。
if re.search('安全密钥 : 不存在',profile_info): continue else: wifi_profile['ssid'] = name[1:] profile_info_pass = subprocess.run(['netsh','wlan','show','profiles',name[1:],'key=clear'],capture_output=True).stdout.decode(encoding='gbk') password = re.search('关键内容 :(.*)\r',profile_info_pass) if password == None: wifi_profile["password"]=None else: wifi_profile["password"] = password[1] wifi_list.append(wifi_profile)最后,只要把列表(wifi_list)中的内容打印出来就行了,我把所有代码跟在后面,方便大家理解。
import subprocessimport recommand_output = subprocess.run(['netsh','wlan','show','profiles'],capture_output= True).stdout.decode(encoding='gbk')profile_names = re.findall('所有用户配置文件 :(.*)\r',command_output)wifi_list=list()print(type(profile_names))if len(profile_names) != 0: for name in profile_names: wifi_profile = dict() profile_info = subprocess.run(['netsh','wlan','show','profiles',name],capture_output=True).stdout.decode(encoding='gbk') if re.search('安全密钥 : 不存在',profile_info): continue else: wifi_profile['ssid'] = name[1:] profile_info_pass = subprocess.run(['netsh','wlan','show','profiles',name[1:],'key=clear'],capture_output=True).stdout.decode(encoding='gbk') password = re.search('关键内容 :(.*)\r',profile_info_pass) if password == None: wifi_profile["password"]=None else: wifi_profile["password"] = password[1] wifi_list.append(wifi_profile)for x in range(len(wifi_list)): print(wifi_list[x])如果大家有什么高见请批评指正
以上就是如何利用python和DOS获取wifi密码的详细内容,更多关于用python和DOS获取wifi密码的资料请关注其它相关文章!
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
笔记本电脑连接Wifi的都是记住密码的,时间久了我们容易忘记密码,当我们要重新连接Wifi密码又如何获取Wifi密码呢?笔记本怎么看WiFi密码是多少?这里给大
笔记本电脑连接Wifi的都是记住密码的,时间久了我们容易忘记密码,当我们要重新连接Wifi密码又如何获取Wifi密码呢?笔记本怎么看WiFi密码是多少?这里给大
如何查看本机WIFI密码win7宽带帐号查询如何查看本机WIFI密码win7宽带帐号查询192.168.1.1或者192.168.0.1,登录名和密码均为adm
手机扫码连wifi是基于WiFi密码分享功能。通过打开手机设置,选择分享的热点,然后微信扫描二维码获取WiFi密码,最后输入密码连接WiFi即可。 手机、为移
在Python中通过GET来获取页面的COOKIE是非常简单的事情,下面的代码实例演示了如何利用Python获取COOKIE内容#!/usr/bin/envpy