【发布时间】:2020-06-10 20:35:20
【问题描述】:
我需要直接与 Python 中的 wpa_supplicant 交互。据我了解,可以使用 Unix 套接字和 wpa_supplicant 控制接口 (https://w1.fi/wpa_supplicant/devel/ctrl_iface_page.html) 连接到 wpa_supplicant。 我写了一个发送 PING 命令的简单程序:
import socket
CTRL_SOCKETS = "/home/victor/Research/wpa_supplicant_python/supplicant_conf"
INTERFACE = "wlx84c9b281aa80"
SOCKETFILE = "{}/{}".format(CTRL_SOCKETS, INTERFACE)
s = socket.socket(socket.AF_UNIX, socket.SOCK_DGRAM)
s.connect(SOCKETFILE)
s.send(b'PING')
while 1:
data = s.recv(1024)
if data:
print(repr(data))
但是我运行的时候,wpa_supplicant报错:
wlx84c9b281aa80: ctrl_iface sendto failed: 107 - 传输端点未连接
谁能提供一个示例,您将如何进行“扫描”然后打印“scan_results”。
【问题讨论】:
-
顺便说一句,为什么要使用
while 1:而不是while True:? -
我平时用'''while True''',现在简写为'''while 1'''。
标签: python python-3.x linux sockets wpa-supplicant