paramiko(python)超时

Kuk*_*osk 18 python ssh timeout scp paramiko

我正在寻找一种为此设置超时的方法:

transport = paramiko.Transport((host, port))
transport.connect(username = username, password = password)
sftp = paramiko.SFTPClient.from_transport(transport)
sftp.get(remotepath, localpath)
sftp.close()
transport.close()
Run Code Online (Sandbox Code Playgroud)

Kuk*_*osk 46

可以使用函数的timeout参数设置连接超时connect.

ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh.connect(host, username=username, password=password, timeout=10)
sftp = ssh.open_sftp()
sftp.get(remotepath, localpath)
sftp.close()
Run Code Online (Sandbox Code Playgroud)

  • 一分钟就搞清楚了.快速工作! (5认同)
  • @kukosk如果你提到要给出超时的单位会有所帮助,我猜它的秒数. (3认同)
  • 请注意,“timeout”参数设置 TCP 超时。您可能还需要调整“banner_timeout”和“auth_timeout”。 (3认同)
  • 默认超时是多少,我认为我也没有在[文档](http://docs.paramiko.org/en/2.4/api/client.html#paramiko.client.SSHClient.connect)中找到它,尽管他们确实提到了“timeout (float) – TCP 连接的可选超时(以秒为单位)” (2认同)