回覆列表
  • 1 # 小小猿愛嘻嘻

    可以,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,原始碼也可以瞭解一下,希望以上分享的內容能對你有所幫助吧。

  • 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()

    獲取當前狀態的狀態。

  • 中秋節和大豐收的關聯?
  • 西遊記妖怪出場順序以及地點?