21.9. "urllib.error" --- Classes de exceção levantadas por urllib.request
*************************************************************************

**Código Fonte:** Lib/urllib/error.py

======================================================================

O módulo "urllib.error" define as classes de exceção para exceções
levantadas por "urllib.request". A classe de exceção base é
"URLError".

As seguintes exceções são levantadas por "urllib.error" conforme
apropriado:

exception urllib.error.URLError

   Os manipuladores levantam essa exceção (ou exceções derivadas)
   quando encontram um problema. É uma subclasse de "OSError".

   reason

      O motivo desse erro. Pode ser uma string de mensagem ou outra
      instância de exceção.

   Alterado na versão 3.3: "URLError" foi tornada uma subclasse de
   "OSError" em vez de "IOError".

exception urllib.error.HTTPError

   Embora seja uma exceção (uma subclasse de "URLError"), uma
   "HTTPError" também pode funcionar como um valor de retorno não
   excepcional do tipo arquivo (a mesma coisa que "urlopen()"
   retorna). Isso é útil ao lidar com erros de HTTP exóticos, como
   solicitações de autenticação.

   code

      Um código de status HTTP conforme definido em **RFC 2616**. Este
      valor numérico corresponde a um valor encontrado no dicionário
      de códigos conforme encontrado em
      "http.server.BaseHTTPRequestHandler.responses".

   reason

      Geralmente é uma string explicando o motivo desse erro.

   headers

      Os cabeçalhos de resposta HTTP para a solicitação HTTP que
      causou a "HTTPError".

      Novo na versão 3.4.

exception urllib.error.ContentTooShortError(msg, content)

   Esta exceção é levantada quando a função "urlretrieve()" detecta
   que a quantidade de dados baixados é menor que a quantidade
   esperada (fornecida pelo cabeçalho *Content-Length*). O atributo
   "content" armazena os dados baixados (e supostamente truncados).
