日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

用python来控制wifi连接

發布時間:2023/12/8 python 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 用python来控制wifi连接 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1、python連接WiFi,需要使用pywifi包,安裝pywifi:pip install pywifi

2、判斷wifi連接狀態:

def wifi_connect_status():wifi = pywifi.PyWiFi()iface = wifi.interfaces()[0] #acquire the first Wlan card,maybe notif iface.status() in [const.IFACE_CONNECTED,const.IFACE_INACTIVE]:print("wifi connected!")return 1else:print("wifi not connected!")return 0

2、掃描wifi:

def scan_wifi():wifi = pywifi.PyWiFi()iface = wifi.interfaces()[0]iface.scan()time.sleep(1)basewifi = iface.scan_results()for i in basewifi:print("wifi scan result:{}".format(i.ssid))print("wifi device MAC address:{}".format(i.bssid))return basewifi

3、連接指定的wifi:

# Define interface status. IFACE_DISCONNECTED = 0 IFACE_SCANNING = 1 IFACE_INACTIVE = 2 IFACE_CONNECTING = 3 IFACE_CONNECTED = 4# Define auth algorithms. AUTH_ALG_OPEN = 0 AUTH_ALG_SHARED = 1# Define auth key mgmt types. AKM_TYPE_NONE = 0 AKM_TYPE_WPA = 1 AKM_TYPE_WPAPSK = 2 AKM_TYPE_WPA2 = 3 AKM_TYPE_WPA2PSK = 4 AKM_TYPE_UNKNOWN = 5# Define ciphers. CIPHER_TYPE_NONE = 0 CIPHER_TYPE_WEP = 1 CIPHER_TYPE_TKIP = 2 CIPHER_TYPE_CCMP = 3 CIPHER_TYPE_UNKNOWN = 4# KEY_TYPE_NETWORKKEY = 0 # KEY_TYPE_PASSPHRASE = 1 def connect_wifi():wifi = pywifi.PyWiFi()ifaces = wifi.interfaces()[0]print(ifaces.name()) #輸出無線網卡名稱ifaces.disconnect()time.sleep(3)profile = pywifi.Profile() #配置文件profile.ssid = "123_wifi" #wifi名稱profile.auth = const.AUTH_ALG_OPEN #需要密碼profile.akm.append(const.AKM_TYPE_WPA2PSK) #加密類型profile.cipher = const.CIPHER_TYPE_CCMP #加密單元profile.key = "88888888" #wifi密碼ifaces.remove_all_network_profiles() #刪除其它配置文件tmp_profile = ifaces.add_network_profile(profile) #加載配置文件ifaces.connect(tmp_profile)time.sleep(5)isok = Trueif ifaces.status() == const.IFACE_CONNECTED:print("connect successfully!")else:print("connect failed!")time.sleep(1)return isok

完整的測試代碼:

#-*-coding:utf-8-*-import pywifi,time from pywifi import constdef wifi_connect_status():wifi = pywifi.PyWiFi()iface = wifi.interfaces()[0] #acquire the first Wlan card,maybe notif iface.status() in [const.IFACE_CONNECTED,const.IFACE_INACTIVE]:print("wifi connected!")return 1else:print("wifi not connected!")return 0def scan_wifi():wifi = pywifi.PyWiFi()iface = wifi.interfaces()[0]iface.scan()time.sleep(1)basewifi = iface.scan_results()for i in basewifi:print("wifi scan result:{}".format(i.ssid))print("wifi device MAC address:{}".format(i.bssid))return basewifidef connect_wifi():wifi = pywifi.PyWiFi()ifaces = wifi.interfaces()[0]print(ifaces.name()) #輸出無線網卡名稱ifaces.disconnect()time.sleep(3)profile = pywifi.Profile() #配置文件profile.ssid = "123_wifi" #wifi名稱profile.auth = const.AUTH_ALG_OPEN #需要密碼profile.akm.append(const.AKM_TYPE_WPA2PSK) #加密類型profile.cipher = const.CIPHER_TYPE_CCMP #加密單元profile.key = "88888888" #wifi密碼ifaces.remove_all_network_profiles() #刪除其它配置文件tmp_profile = ifaces.add_network_profile(profile) #加載配置文件ifaces.connect(tmp_profile)time.sleep(5)isok = Trueif ifaces.status() == const.IFACE_CONNECTED:print("connect successfully!")else:print("connect failed!")time.sleep(1)return isokdef main():print("start")wifi_connect_status()scan_wifi()connect_wifi()print("finish!")if __name__ == "__main__":main()

總結

以上是生活随笔為你收集整理的用python来控制wifi连接的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。