我想用 RaspberryPi 操作一个 WiFi dongle,(它就像一个没有内置 WiFi 的 CPU)。我需要编写一个自动扫描 WiFi 网络的 python 脚本,并且需要使用已知的 SSID 和密码自动建立连接。
这意味着我需要从文件中提供 WiFi 网络的密码,并且 剩下的就是自动扫描和连接。
我从网上读取了一个包含 WiFi SSID 名称和密码的文件。
我需要编写一个脚本来扫描和列出当前网络并将其与文件中的 SSID 相匹配,并进一步自动创建与该已知网络的连接。
RaspberryPi 操作系统:Rasbian
最佳答案
wifi是一个 python 库,用于在 linux 上扫描和连接到 wifi 网络。您可以使用它来扫描和连接到无线网络。
它没有对自动连接到网络的任何内置支持,但您可以轻松编写脚本来实现这一点。下面是有关如何执行此操作的基本想法的示例。
#!/usr/bin/python
from __future__ import print_function
from wifi import Cell, Scheme
# get all cells from the air
ssids = [cell.ssid for cell in Cell.all('wlan0')]
schemes = list(Scheme.all())
for scheme in schemes:
ssid = scheme.options.get('wpa-ssid', scheme.options.get('wireless-essid'))
if ssid in ssids:
print('Connecting to %s' % ssid)
scheme.activate()
break
我刚刚写了它,它似乎有效。正如你所知,我编写了 wifi 库。如果您希望我将此功能添加到该库,我可以。
关于RaspberryPi自动连接wifi的python脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20470626/