【问题标题】:Python, linux: Using wifi Cell and Scheme, how do I connect to a network?Python, linux:使用 wifi Cell 和 Scheme,我如何连接到网络?
【发布时间】:2020-11-11 13:56:15
【问题描述】:

供参考:https://wifi.readthedocs.io/en/latest/scanning.html#connecting-to-a-network

通过执行以下命令,我已成功获取无线网络列表:

from wifi import Cell, Scheme
cells = list(Cell.all('wlan0'))
my_wifi_cell = cells[some_index]

但是当我尝试使用它时(如上例所示):

scheme = Scheme.for_cell('wlan0', 'home', my_wifi_cell, 'my password')
scheme.save()
scheme.activate()

运行提升的 python 时,scheme.activate() 失败并出现以下回溯:

Traceback (most recent call last):
 File "<stdin>", line 1, in <module>
 File "/usr/local/lib/python3.7/dist-packages/wifi/scheme.py", line 172, in activate
   subprocess.check_output(['sbin/ifdown', self.interface], stderr=subprocess.STDOUT)
 File "/usr/lib/python3.7/subprocess.py", line 395, in check_output
   **kwargs).stdout
 File "/usr/lib/python3.7/subprocess.py", line 487, in run
   output=stdout, stderr=stderr)
subprocess.CalledProcessError: command '['/sbin/ifdown', 'wlan0']' returned non-zero exit status 1.

对不起,如果有任何错误,我不得不手动输入。无论如何,我验证了 ssid 和密码是正确的,我只是不确定如何解决这个错误。有什么想法吗?

更新: 根据https://github.com/rockymeza/wifi/issues 看来,这似乎不再起作用了(?)是否有解决此问题的方法,或者我应该开始寻找其他地方吗?

【问题讨论】:

    标签: python linux raspberry-pi subprocess wifi


    【解决方案1】:

    我相信您缺少的是 root 权限。让我们尝试使用 root 运行它

    【讨论】:

    • 好理论,但我忘了提到我已经用 root 尝试过这个。在没有 root 的情况下运行时,它只是告诉我在尝试保存方案时访问被拒绝。
    • 可以手动运行“/sbin/ifdown wlan0”看看有没有报错吗?
    • 运行“sudo /sbin/ifdown wlan0”会导致 -- ifdown: interface wlan0 not configured
    • 我认为您首先需要解决提到的“未配置”问题。尝试使用以下配置配置该接口:“vi /etc/network/interfaces”-添加以下“auto wlan0 iface wlan0 inet loopback”类似的问题可以在这里找到:stackoverflow.com/questions/44154053/…
    猜你喜欢
    • 1970-01-01
    • 2023-03-30
    • 1970-01-01
    • 2016-05-30
    • 2019-11-05
    • 2021-09-15
    • 1970-01-01
    • 2015-05-20
    • 1970-01-01
    相关资源
    最近更新 更多