使用Python Pysftp连接到SFTP服务器时出错

时间:2016-02-02 13:09:16

标签: python sftp pysftp

我正在Linux服务器上执行Python脚本,该脚本使用pysftp连接到另一台服务器,以便读取位于该远程服务器目录中的文件。当我运行脚本时,它在连接到远程服务器时失败并创建一个标题为的文本文件:'此服务仅允许sftp连接。'

此文件在我的项目目录中创建。以下是我的代码失败的部分:

def sftp_get_file(sftp_host, sftp_username):
    with pysftp.Connection(sftp_host, sftp_username) as sftp:
        # transfer file from remote to local
        sftp.get(remote_file, local_file)

代码非常简单,并且在我使用本地服务器作为远程服务器进行测试时可以正常运行。当我通过实际依赖SFTP在新环境中测试它时,它失败了。有什么建议?当pysftp应该只使用SFTP时,是否在某些时候使用SSH?

1 个答案:

答案 0 :(得分:1)

原来问题是由于我在脚本中执行sftp.execute(' ls')几行。我正在远程访问支持的sftp命令的服务器,该命令被禁止。