使用 ftplib 的 SFTP

发布于 2024-08-16 22:56:03 字数 606 浏览 6 评论 0原文

我需要使用 SFTP 从主机下载文件。

你知道是否可以使用 Python ftplib 来做到这一点吗? 我看到这里有一个示例,但是当我尝试连接时收到 EOFError

我尝试了这段代码:

import ftplib
ftp = ftplib.FTP()
ftp.connect( "1.2.3.4", "22" )

此方法在很长时间后返回错误,因此我无法执行登录调用。 我无法尝试构造函数 FTP([host[, user[, passwd[, acct[, timeout]]]]]) 因为 我的端口是 22,但 ftplib 默认是 21。

如果我按照示例操作

ftp = ftplib.FTP("1.2.3.4")
ftp = ftplib.FTP("1.2.3.4","22")

,我会收到连接被拒绝的消息,因此我无法输入任何用户名密码。你能帮助我吗?非常感谢

I need to download a file from a host using SFTP.

Do you know if is it possible to do that using Python ftplib?
I saw an example here, but when I try to connect I receive EOFError.

I tried this code:

import ftplib
ftp = ftplib.FTP()
ftp.connect( "1.2.3.4", "22" )

This method returns with an error after long time so I cannot perform a call to login.
I cannot try the constructor FTP([host[, user[, passwd[, acct[, timeout]]]]]) because
my port is 22 but ftplib default is 21.

If I follow the example

ftp = ftplib.FTP("1.2.3.4")
ftp = ftplib.FTP("1.2.3.4","22")

I receive a connection refused so I cannot enter any username password. Can you help me? Thank you very much

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

贪恋 2024-08-23 22:56:03

正如您链接到的问题所述,ftplib不支持SFTP(这是一个通过 SSH 传输协议,与 FTPS、FTP over SSL 无关)。使用推荐Paramiko 代替。

As the question you linked to states, ftplib doesn't support SFTP (which is a transfer protocol over SSH and has nothing to do with FTPS, FTP over SSL). Use the recommended Paramiko instead.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文