"email.encoders": Codificadores
*******************************

**Código-fonte:** Lib/email/encoders.py

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

Este módulo faz parte da API legada de e-mail ("Compat32"). Na nova
API, a funcionalidade é fornecida pelo parâmetro *cte* do método
"set_content()".

Este módulo está descontinuado no Python 3. As funções fornecidas aqui
não devem ser chamadas explicitamente, pois a classe "MIMEText" define
o tipo de conteúdo e o cabeçalho CTE usando os valores *_subtype* e
*_charset* passados durante a instanciação dessa classe.

O texto restante nesta seção é a documentação original do módulo.

Ao criar objetos "Message" do zero, você frequentemente precisa
codificar as cargas úteis para transporte por meio de servidores de
e-mail compatíveis. Isso é especialmente verdadeiro para mensagens do
tipo *image/** e *text/** contendo dados binários.

The "email" package provides some convenient encoders in its
"encoders" module.  These encoders are actually used by the
"MIMEAudio" and "MIMEImage" class constructors to provide default
encodings.  All encoder functions take exactly one argument, the
message object to encode.  They usually extract the payload, encode
it, and reset the payload to this newly encoded value.  They should
also set the *Content-Transfer-Encoding* header as appropriate.

Observe que essas funções não são significativas para uma mensagem
multiparte. Elas devem ser aplicadas a subpartes individuais, e
levantarão um "TypeError" se for passada uma mensagem cujo tipo seja
multiparte.

Aqui estão as funções de codificação fornecidas:

email.encoders.encode_quopri(msg)

   Codifica a carga útil em formato quoted-printable e define o
   cabeçalho *Content-Transfer-Encoding* como "quoted-printable" [1].
   Esta é uma boa codificação para usar quando a maior parte da sua
   carga útil é de dados imprimíveis normais, mas contém alguns
   caracteres não imprimíveis.

email.encoders.encode_base64(msg)

   Codifica a carga útil em formato base64 e define o cabeçalho
   *Content-Transfer-Encoding* para "base64". Esta é uma boa
   codificação para usar quando a maior parte da sua carga útil é de
   dados não imprimíveis, pois é um formato mais compacto do que
   quoted-printable. A desvantagem da codificação base64 é que ela
   torna o texto não legível por humanos.

email.encoders.encode_7or8bit(msg)

   Na verdade, isso não modifica a carga útil da mensagem, mas define
   o cabeçalho *Content-Transfer-Encoding* para "7bit" ou "8bit",
   conforme apropriado, com base nos dados da carga útil.

email.encoders.encode_noop(msg)

   Isso não faz nada; nem mesmo define o cabeçalho *Content-Transfer-
   Encoding*.

-[ Notas de rodapé ]-

[1] Observe que a codificação com "encode_quopri()" também codifica
    todos os caracteres de tabulação e espaço nos dados.
