gpt4 book ai didi

python - paramiko sftp.get

转载 作者:太空宇宙 更新时间:2023-11-04 08:19:16 24 4
gpt4 key购买 nike

我正在尝试使用 paramiko 通过 SFTP 下载文件。我这样创建 SFTP 对象:

transport = paramiko.Transport((sftp_server, sftp_port))
transport.connect(username = sftp_login, password = sftp_password)
sftp = paramiko.SFTPClient.from_transport(transport)
sftp.get("file_name", '.', None)

并且,我得到了异常:

Exception python : Folder not found: \\$IP_ADDRESS\folder_1/folder_2\file_name.

我正在运行 paramiko 以连接到客户端 chrooted SFTP。文件“file_name”位于我客户的 chroot 的根目录下。

  • 我不明白为什么我会出现此错误,它显然显示了我客户服务器的完整路径(在 chroot 之外)。
  • 我不知道为什么我的虚拟文件不会被下载 :O

我会提供任何必要的信息。

最佳答案

以下代码在 Ubuntu 11.10 中对我有用:

sftp.get("file_name", "file_name")

我只是做了一些应该不会影响您的问题的更改:

  • localpath:使用本地文件名的完整路径,而不仅仅是 '.'(不允许使用目录)
  • callback:将其删除,因为 None 已经是默认值,实际上并不需要它

由于我没有收到关于 remotepath 参数的相同错误,我猜您可能使用了具有不同行为的不同 sftp 服务器。

我的建议是:

  • 使用另一个客户端(例如 sftp 命令)验证您要查找的文件确实位于您要获取它的位置。
  • 使用 sftp.chdir 只是为了确保所使用的默认目录是您期望的目录。

希望对您有所帮助。

关于python - paramiko sftp.get,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8669165/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com