Python:使用proxyhost和proxyport建立SFTP连接

时间:2019-04-05 07:50:50

标签: python python-3.x

我试图使用代理建立SFTP连接 并打印出SFTP目录中的文件

import pysftp

myHostname = "some.hostname.com"
myUsername = "test"
myPassword = "password"
myProxyHost = "10.10.10.10"
myProxyPort = "1010"
with pysftp.Connection(
    host=myHostname,
    username=myUsername,
    password=myPassword,
    proxy=myProxyHost,
    proxyport=myProxyPort,
) as sftp:
    print("Connection succesfully stablished ... ")

    # Switch to a remote directory
    sftp.cwd("/test/folder")
    directory_structure = sftp.listdir_attr()

    # Print data
    for attr in directory_structure:
        print(attr.filename, attr)

但是我收到一个错误,提示“ TypeError: init ()有一个意外的关键字参数'proxy'

有人可以告诉我如何使用代理建立成功的连接。

1 个答案:

答案 0 :(得分:0)

基于pysftp.Connection()的文档,它不支持proxyproxyport参数。

使用底层的Paramiko SFTPClient class可能会带来更好的运气–似乎有gist over here解释了如何使用Paramiko进行代理。