19.10. uu — Codifica e decodifica arquivos uuencode

Código Fonte: Lib/uu.py


Este módulo codifica e decodifica arquivos no formato uuencode, permitindo que dados binários arbitrários sejam transferidos por conexões somente ASCII. Sempre que um argumento de arquivo é esperado, os métodos aceitam um objeto arquivo ou similar. Para compatibilidade com versões anteriores, uma string contendo um nome de caminho também é aceita, e o arquivo correspondente será aberto para leitura e gravação; o nome do caminho '-' é entendido como a entrada ou saída padrão. No entanto, essa interface foi descontinuada; é melhor para o chamador abrir o próprio arquivo e ter certeza de que, quando necessário, o modo é 'rb' ou 'wb' no Windows.

Este código foi contribuído por Lance Ellinghouse e modificado por Jack Jansen.

O módulo :mod: uu define as seguintes funções:

uu.encode(in_file, out_file, name=None, mode=None)

Uuencode file in_file into file out_file. The uuencoded file will have the header specifying name and mode as the defaults for the results of decoding the file. The default defaults are taken from in_file, or '-' and 0o666 respectively.

uu.decode(in_file, out_file=None, mode=None, quiet=False)

Esta chamada decodifica o arquivo uuencoded in_file colocando o resultado no arquivo out_file. Se out_file for um nome de caminho, mode será usado para definir os bits de permissão se o arquivo precisar ser criado. Os padrões para out_file e mode são retirados do cabeçalho uuencode. Porém, se o arquivo especificado no cabeçalho já existir, uma uu.Error é levantada.

decode() pode imprimir um aviso de erro padrão se a entrada foi produzida por um uuencoder incorreto e o Python pôde se recuperar desse erro. Definir quiet com um valor verdadeiro silencia este aviso.

exception uu.Error

Subclasse de Exception, isso pode ser levantada por uu.decode() em várias situações, como descrito acima, mas também incluindo um cabeçalho mal formatado ou arquivo de entrada truncado.

Ver também

Módulo binascii

Módulo de suporte contendo conversões ASCII para binário e binário para ASCII.