Python SSH / SFTP 模块?
Posted
技术标签:
【中文标题】Python SSH / SFTP 模块?【英文标题】:Python SSH / SFTP Module? 【发布时间】:2010-12-08 21:45:26 【问题描述】:我一直在寻找一个模块,它允许我在 python 中执行 SSH / SFTP 功能,而无需使用 POPEN 手动执行。有这样的吗?我还没有找到这方面的任何真实信息,谢谢!
【问题讨论】:
帕拉米科? ***.com/search?q=[python]+ssh+sftp 【参考方案1】:您可能正在寻找优秀的 paramiko 库:
http://www.paramiko.org/
【讨论】:
【参考方案2】:paramiko 效果很好:Paramiko Homepage
【讨论】:
【参考方案3】:根据您希望通过 ssh 执行的操作,您可能还会从查看 pexpect 库中受益:http://www.noah.org/wiki/pexpect
【讨论】:
【参考方案4】:对于 SFTP,您可以使用 pysftp,这是对 paramiko 的 SFTPClient (pip install sftp
) 的精简包装。
下载文件示例:
import pysftp #pip install sftp
import sys
hostname = "128.65.45.12"
username = "bob"
password = "123456"
sftp = pysftp.Connection(hostname, username=username, password=password)
sftp.get('/data/word_vectors/GoogleNews-vectors-negative300.txt', preserve_mtime=True)
print('done')
【讨论】:
我喜欢 pysftp 包,我喜欢你注意到通过 pip 安装时它被称为sftp
,尽管它被导入为pysftp
。但是,我最近需要一个新安装(对于 Python 3.6),而 pip 现在实际上想要pysftp
。此外,为了更好的安全性,如果您想使用仅密码身份验证,您现在必须明确禁用主机密钥检查。这一点都不难做到(几行额外的代码,警告消息和文档说明了您需要做什么),但您可能需要更新您的答案以反映这些变化。
@JohnY 很高兴知道。我目前没有使用该软件包;如果您有一些代码 sn-p,欢迎您更新答案。以上是关于Python SSH / SFTP 模块?的主要内容,如果未能解决你的问题,请参考以下文章
python paramiko模块sftp异常:paramiko.ssh_exception.SSHException: EOF during negotiation