在使用pxssh时,出现了无法导入pexpect中的'spawn'名称的问题。

15

这是我正在尝试运行的代码:

from pexpect import pxssh
s = pxssh.pxssh()
if not s.login ('myip', 'myusername', 'mypassword'):
    print ("SSH session failed on login.")
    print (str(s))
else:
    print ("SSH session login successful")
    s.sendline ('ls -l')
    s.prompt()         # match the prompt
    print (s.before)     # print everything before the prompt.
    s.logout()

我运行时遇到的错误是:

Traceback (most recent call last):
  File "test_pexpect.py", line 1, in <module>
    from pexpect import pxssh
  File "C:\Python35\lib\site-packages\pexpect\pxssh.py", line 23, in <module>
    from pexpect import ExceptionPexpect, TIMEOUT, EOF, spawn
ImportError: cannot import name 'spawn'

有人能帮我吗?我在 Windows 上使用 Python 3.5


我自己在Windows机器上尝试了这个,from pexpect import pxssh 也给了我同样的问题。我也找不到其他使用pxssh的替代方法,所以要么当前版本的pip中有一个bug,要么就有另一种使用它的方式,但我在pexpect/pssh文档的快速浏览中没有找到。我没有时间进一步调查,但想分享一下我的经验! - Anna
1
显然,在Windows上还不支持spawn。它在他们的文档中有提到。你知道通过Windows用Python进行SSH的更好的方法吗?我正在尝试使用paramiko,但pycrypto会抛出很多错误。 谢谢你的时间。 - Oliver Blue
我自己没有使用过,但这里有几个要注意的地方:https://wiki.python.org/moin/SecureShell - Anna
1个回答

11

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接