-
1 # 小小猿愛嘻嘻
-
2 # 你看我獨角獸嗎
當然可以。python有一個叫做wifi的package,很好用。
wifi package提供了一組用於在Linux系統上配置和連線WiFi網路的工具。使用此庫,您可以發現網路,連線到它們,儲存配置等等。
該庫還附帶了一個可執行檔案,可用於管理您的WiFi連線。Wifi目前支援以下加密型別:
沒有加密;WEP;WPA2。安裝開啟cmd,直接在命令列輸入pip install wifi即可。
這將安裝wifi命令,用於發現和連線到wifi網路的Python庫,以及用於wifi命令的bash完成檔案。
簡單管理WiFi網路發現網路
您可以使用此庫來掃描可用的網路。要獲得該區域中不同的列表,您可以這樣做:
連線到網路
要連線到網路,您需要為其設定方案。
儲存方案後,可以使用它進行檢索Scheme.find():
這個庫還有個很好的地方,就是隻要配置好設定就可以下一次自動連線,是一個很方便的配置。
-
3 # 人工智慧營python有一個支援的庫是pywifi,它是專門用來wifi模組的。我們一起來下載下來,使用pip 下載後,我們只需要加入幾行程式碼即可完成wifi的檢測。
這樣 就是一個完整的wifi檢測程式碼,其中使用到了const,這是因為pywifi庫中有const,但python 本身沒有這一樣,如果不安裝pywifi,還需要定義一個const類。這裡我們就直接引用pywifi中帶有的const類即可!
這是程式碼執行後輸出的結果我們可以對照下,我連線的wifi是不是這樣的。這是我連線的wifi屬性。可以看出有些內容還是一樣的,這裡只說了檢測wifi的程式碼,如何破解wifi程式碼,敬請期待。
-
4 # NC少年
授人以魚不如授人以漁,直接上搜索引擎去搜索:
前三名為python-wifi、wifi、pywificontrol, 文件、例子、原始碼,開啟對應的連結,基本都有了。
再說wifi的認證方式:有WEP、WPA/WPA2 PSK、802.1x EAP、WAPI PSK、WAPI CERT幾種,見下圖。而無線網路的管理方式,作業系統都會提供對應的API,甚至有相應的工具:命令列的或者圖形介面(GUI)操作的。比如iwlist。而wifi的眾多配置,比如歷史連線網路資訊都會有配置檔案形式儲存在某個目錄下,Linux和Android都是如此。只要你有對應的讀寫許可權(root),對應配置資訊,含密碼都可以看到。
Python管理wifi的包,我猜測底層要麼是用的作業系統提供的API,要麼是一些底層的工具,透過讀取對應的配置檔案來實現管理網路。手動翻了一個 Package的原始碼,果然不出所料:無線網路的掃描功能是透過啟動一個程序,執行iwlist命令實現的,然後用正則去解析該命令的輸出字串,獲得想要的資訊。
Python的語言特性,使得它很容易封裝作業系統底層的一些命令或API,包一層,很容易實現管理操作Wifi的功能。明白這一點,答案就很清楚了,甚至自己就能寫出來,並且可以做到跨平臺支援。
-
5 # zhangyiant
可以,找到對應的包就可以了。
python可以呼叫c介面,這樣就能完成系統API的呼叫,控制wifi是沒什麼問題的。
-
6 # 不平常的芝麻
網址:https://pypi.org/project/pywifi/1.1.6/
github網址:
https://github.com/awkman/pywifi
開發者: Jiang Sheng-Jhih
pywifi提供了一個跨平臺的Python模組,用於操作無線介面。支援Windows和Linux.
安裝條件“
在Linux上,您需要執行wpa_supplicant來操作wifi裝置,然後pywifi可以透過socket與wpa_supplicant進行通訊。
在Windows上,Native Wifi元件附帶的Windows版本大於Windows XP SP2。
安裝:
使用pip從源安裝:
pip install pywifi
開始 -》執行-》輸入
cmd.exe
進入指令操作介面。在介面中輸入:
pip install pywifi
pywifi 說明
常量
以下constatns在pywifi中定義。
在使用常量之前,請記住import pywifi。
介面狀態
Interface.status() 將返回以下狀態程式碼之一。
const.IFACE_DISCONNECTED
const.IFACE_SCANNING
const.IFACE_INACTIVE
const.IFACE_CONNECTING
const.IFACE_CONNECTED
身份驗證演算法
驗證演算法應該繫結到配置檔案。對於正常情況,幾乎所有AP都使用開放演算法。
const.AUTH_OPEN
const.AUTH_SHARED
金鑰管理型別
金鑰管理型別應分配給配置檔案。
對於普通AP,如果
AP沒有安全設定,將配置檔案設定為akm AKM_TYPE_NONE。
AP處於WPA模式,將配置檔案設定為akm AKM_TYUPE_WPAPSK。
AP處於WPA2模式,將配置檔案設定為akm AKM_TYUPE_WPA2PSK。
AKM_TYPE_WPA並AKM_TYPE_WPA2透過企業的AP使用。
const.AKM_TYPE_NONE
const.AKM_TYPE_WPA
const.AKM_TYPE_WPAPSK
const.AKM_TYPE_WPA2
const.AKM_TYPE_WPA2PSK
密碼型別
如果akm不是,則應將密碼型別設定為ProfileAKM_TYPE_NONE。您可以參考要連線的AP的設定。
const.CIPHER_TYPE_NONE
const.CIPHER_TYPE_WEP
const.CIPHER_TYPE_TKIP
const.CIPHER_TYPE_CCMP
網路資料
一個配置檔案是我們要連線到AP的設定。個人資料的欄位:
ssid - AP的ssid。
auth - AP的認證演算法。
akm - AP的金鑰管理型別。
cipher - AP的密碼型別。
key (optinoal) - AP的關鍵。如果密碼不是,則應該設定此項CIPHER_TYPE_NONE。
例:
import pywifiprofile = pywifi.Profile()profile.ssid = "testap"profile.auth = const.AUTH_ALG_OPENprofile.akm.append(const.AKM_TYPE_WPA2PSK)profile.cipher = const.CIPHER_TYPE_CCMPprofile.key = "12345678"wifi = pywifi.PyWiFi()iface = wifi.interfaces()[0]profile = iface.add_network_profile(profile)iface.connect(profile)介面一個介面意味著我們用它來執行Wi-Fi運營的Wi-Fi介面(例如,掃描,連線,斷開,...)。
獲取介面資訊
通常,平臺中只有一個Wi-Fi介面。因此,使用索引0來獲得Wi-Fi介面。
import pywifi
wifi = pywifi.PyWiFi()
iface = wifi.interfaces()[0]
Interface.name
()
獲取Wi-Fi介面的名稱。
Interface.scan()
觸發介面掃描AP。
Interface.scan_results()
獲取先前觸發掃描的結果。一個配置檔案列表將被退回。
注意。因為每個Wi-Fi介面的掃描時間是不同的。呼叫後scan_results()2~8秒後呼叫更安全scan()。
Interface.add_network_profile(個人資料)
新增AP配置檔案以便以後連線。
Interface.remove_all_network_profiles()
Interface.network_profiles()
透過返回配置檔案列表獲取所有已儲存的AP配置檔案。
Interface.connect(配置檔案)
透過給定的配置檔案連線到指定的AP 。 注意。作為當前的設計,add_network_profile(profile)應該在呼叫之前connect(profile)呼叫。
Interface.disconnect()
斷開當前的AP連線。
Interface.status()
獲取當前狀態的狀態。
回覆列表
可以,python專門有一個操作wifi的包—pywifi,用其操作wifi起來很簡單,下面我大概介紹一下這個包的安裝和簡單使用,實驗環境win10+python3.6+pycharm5.0,主要內容如下:
1.下載安裝,這裡直接在cmd視窗中輸入命令“pip install pywifi”就行,如下,很快就能安裝成功:
2.安裝成功後,我們就可以測試一下這個模組,這裡主要測試了4個方面,分別是檢視無線網絡卡狀態、掃描周圍wifi、斷開無線網絡卡連線、連線wifi,主要程式碼和截圖如下:
檢視無線網絡卡狀態,主要程式碼如下:
程式執行截圖如下:
掃描周圍wifi,主要程式碼如下:
程式執行截圖如下,列出了周圍wifi的名稱:
斷開無線網絡卡連線,程式碼如下:
程式執行截圖如下,wifi已經成功斷開:
連線wifi,這裡需要輸入wifi名稱和密碼,建立一個profile後,然後透過這個profile去連線wifi,主要程式碼如下:
程式執行截圖如下,已經成功連線wifi:
其實這裡就可以進行暴力破解wifi,只不過速度太慢,沒啥價值,感興趣的可以自己試試。
至此,我們就完成了pywifi這個模組的安裝和簡單使用。總的來說,其實很簡單,網上也有相關教程可以參考學習一下,pywifi官網地址https://github.com/awkman/pywifi,原始碼也可以瞭解一下,希望以上分享的內容能對你有所幫助吧。