之前寫過一個2.7版本的,現在python都更新到3.7了,所以把代碼更新了,如下:
# -*- coding: UTF-8 -*-
import os
# 定義一個函數checkWIFI,獲取電腦連接過的所有wifi名稱和密碼,結果以列表形式返回
def checkWIFI():
# 定義一個空列表,用來存放查詢結果
list = []
# 查詢所有的wifi名稱
message = os.popen('netsh wlan show profiles').readlines()
# print(message)
# 獲取的結果是一個列表list,需要進行遍歷
for i in message:
# 檢查每一個結果中是否含有指定關鍵字
if i.find(u"所有用戶配置文件 : ") != -1:
# 如果找到關鍵字,就截取指定位置的字符串,即wifi名稱,再拼接成cmd命令
command = 'netsh wlan show profiles name="' + i[14:].strip() + '" key=clear'
# print(command)
# 執行拼接好的命令,獲取含有密碼的結果
per_wifi = os.popen(command).readlines()
# 獲取的結果是一個列表list,需要進行遍歷
for j in per_wifi:
# 檢查每一個結果中是否含有指定關鍵字
if j.find(u"關鍵內容 :") != -1:
# 獲取字符串指定位置的內容並判斷是否爲空
if j[18:] != '':
# 定義一個臨時列表list_temp存放每一個wifi信息,即wifi名稱和密碼
list_temp = []
# 將wifi名稱追加到列表list_temp
list_temp.append(i[14:].strip())
# 將密碼追加到列表list_temp
list_temp.append(j[18:].strip())
# 將每個wifi信息作爲一個整體追加到列表list
list.append(list_temp)
# print("wifi名稱:" + result[11:])
# print("wifi密碼:"+passwd[18:])
# print("")
# 將所有的wifi信息列表list返回給調用者
return list
if __name__ == "__main__":
print("正在查詢......")
# 定義一個變量,存放調用checkWIFI的執行結果
list = checkWIFI()
print("返回結果如下:")
i = 0
# 將查詢結果遍歷輸出
for n in list:
i = i + 1
print(str(i) + "、wifi名稱:" + n[0] + ",密碼:" + n[1])