可以使用Python扫描Wi-Fi吗?

12 投票
2 回答
16484 浏览
提问于 2025-04-16 01:37

我想写一个Python脚本,能够扫描并显示附近的Wi-Fi网络列表。请问怎么做呢?如果可以的话。

谢谢。

杰克。

2 个回答

0

其实可以通过使用 subprocess 模块来实现这个功能。

import subprocess
networks = subprocess.check_output(['netsh', 'wlan', 'show', 'network'])
networks = networks.decode('ascii')
networks = networks.replace('\r', '')
ssid = networks.split('\n')
ssid = ssid[4:]
ssids = []
x = 0

while x < len(ssid):
    if x % 5 == 0:
        ssids.append(ssid[x])
    x += 1
print(ssids)  
7

是的,这是可能的。关于怎么做,这个链接可能会帮助你入门。

另外,你可以使用pywifi这个包来扫描你周围的所有无线设备。

示例:

 import pywifi
 import time

 wifi = pywifi.PyWiFi()
 iface = wifi.interfaces()[0]
 iface.scan()
 time.sleep(0.5)
 results = iface.scan_results()


 for i in results:
     bssid = i.bssid
     ssid  = i.ssid
     print(f"{bssid}: {ssid}")

撰写回答