Нелегко найти хороший справочный документ, в котором описаны все исключения python.
Например, всякий раз, когда я получаю исключение IOError, у него есть другой формат сообщения, но я не нашел никакой хорошей ссылки:
IOError: ('http protocol error', 0, 'got a bad status line', None)
или
IOError: [Errno socket error] [Errno 110] Connection timed out
Built- в Исключениях документально, здесь IOException. Проверьте errno
документацию для определения символа, errno.errorcode
- это dict, содержащий отображение между кодом ошибки/символами.
import errno
errno.errorcode[numeric_code]