You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

树莓派环境下Python3远程执行命令失败的多方案问题求助

树莓派环境下Python3远程执行命令失败的多方案问题求助

我现在需要在Python3脚本里实现远程主机执行命令的功能,试了好几种方法都没成功,麻烦大家帮忙看看问题出在哪?

尝试1:使用paramiko安装失败

执行pip3 install paramiko时安装失败,报错提示cryptography库的bcrypt模块存在问题,具体异常信息说缺少等号。

尝试2:使用pexpect的pxssh无法建立连接

不管是连远程主机还是localhost,都无法成功登录,代码如下:

#! /usr/bin/python3

from pexpect import pxssh
ssh = pxssh.pxssh()

if not ssh.login("192.168.1.34", "xxxxxxx", "yyyyyyyy"):
    print("Failed")

运行后直接输出"Failed",始终无法建立连接。

尝试3:使用subprocess调用ssh解析主机失败

我写了如下代码,想根据本地温度判断是否触发远程GPIO操作:

#! /usr/bin/python3

import time, subprocess, sys

IP = "192.168.1.34"

with open ("/var/run/thermostat/insideT", "r") as infile:
    Temp = float(infile.read())    # 获取室内温度
if Temp > 75:
    TString = IP + '"/usr/bin/gpio write 0 1"'
    subprocess.run(["ssh", TString])

但运行后ssh报错:

ssh: Could not resolve hostname 192.168.1.34 : Name or service not known

我试了好几种subprocess的调用写法都不行,但直接在终端执行ssh 192.168.1.34 "gpio write 0 1"是完全正常的。

另外补充一下:其实换个思路也可以——从远程主机读取本地/var/run/thermostat/insideT的温度值,哪个方案实现简单都行。

两台设备都是树莓派,运行的是最新版Raspberry Pi OS,并且已经配置好了SSH免密登录。

备注:内容来源于stack exchange,提问作者Leslie Rhorer

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.13 20:10:27