如何捕获此Python异常:错误:[Errno 10054]远程主机强行关闭现有连接

Sil*_*eel 13 python sockets exception python-2.7

我试图在Python 2.7中捕获这个特殊的异常(并且只有这个异常),但我似乎无法找到异常类的文档.有吗?

[Errno 10054] An existing connection was forcibly closed by the remote host
Run Code Online (Sandbox Code Playgroud)

我的代码到目前为止:

try:
  # Deleting filename
  self.ftp.delete(filename)
  return True
except (error_reply, error_perm, error_temp):
  return False
except # ?? What goes here for Errno 10054 ??
  reconnect()
  retry_action()
Run Code Online (Sandbox Code Playgroud)

小智 14

错误类型是socket.error,文档在这里.尝试修改你的代码,如下所示:

import socket
import errno  

try:
    Deleting filename
    self.ftp.delete(filename)
    return True
except (error_reply, error_perm, error_temp):
    return False
except socket.error as error:
    if error.errno == errno.WSAECONNRESET:
        reconnect()
        retry_action()
    else:
        raise
Run Code Online (Sandbox Code Playgroud)