2

我希望能够使用 python 确定当前 WiFi 网络的名称。子流程是可以接受的。一台mac,我可以(在子进程中)

networksetup -getairportnetwork en1

在 Windows 上,我找不到任何有用的东西。信息似乎不在ipconfig. 我也试过

netsh show wlan profiles name=*

但它给出了以下错误消息:

The following command was not found: show wlan profiles name=*.

编辑

所以我把参数顺序倒过来了,应该是

netsh wlan show profiles name=*

这有效,但仅当我在线时。当我离线或连接到不提供 Internet 访问的 ad-hoc 网络时,我会获得最近连接的 WiFi 网络的名称。

不幸的是,我将在无法依赖 Internet 连接的区域的 ad-hoc 网络上使用它。

4

3 回答 3

5

要获取您连接到的当前配置文件的名称,请尝试-

netsh wlan show interfaces

并查看最后一行。您连接的个人资料名称将可见。如果您断开连接,此字段将不可见。

于 2015-01-15T11:36:01.967 回答
1

尝试这个:

netsh wlan show profiles name=*

于 2013-10-24T20:12:04.277 回答
0

继@Akshayanti 的帖子之后,使用 python 来专门获取网络的名称(ESSID)

你可以这样做:

out = subprocess.check_output('netsh wlan show interfaces').decode("utf-8")
current = out.split("\n")[19].split(": ")[1]
print(f"Current WiFi Network: {current}")

你可以进一步压缩它。但本质上,这就是你需要做的。

于 2022-02-16T04:37:00.353 回答