如果失败:
ssh = paramiko.SSHClient()
ssh.connect( host, username = USER , pkey = MY_KEY, timeout = 2)
我得到一个像这样的追溯:
File "<stdin>", line 1, in <module>
File "<stdin>", line 7, in bs_process
File "/usr/lib/python2.7/site-packages/paramiko/client.py", line 282, in connect
for (family, socktype, proto, canonname, sockaddr) in socket.getaddrinfo(hostname, port, socket.AF_UNSPEC, socket.SOCK_STREAM):
socket.gaierror: [Errno -2] Name or service not known
我不知道 Paramiko 会因错误的连接尝试而抛出什么样的错误。哪些是异常类,我如何导入它们?
原文由 Jesvin Jose 发布,翻译遵循 CC BY-SA 4.0 许可协议
您可以先查看 API 文档,了解所有以 Exception 结尾的类:
http://docs.paramiko.org/en/1.15/api/client.html#paramiko.client.SSHClient.connect
然后,您还应该捕获
socket.error
。我认为这会让你得到几乎所有的东西。socket.gaierror
是socket.error
的子类,例如。