netrc
— Arquivo de processamento netrc¶
Código-fonte: Lib/netrc.py
A classe netrc
analisa e encapsula o formato do arquivo netrc usado pelo programa Unix ftp e outros clientes FTP.
- class netrc.netrc([file])¶
A
netrc
instance or subclass instance encapsulates data from a netrc file. The initialization argument, if present, specifies the file to parse. If no argument is given, the file.netrc
in the user’s home directory – as determined byos.path.expanduser()
– will be read. Otherwise, aFileNotFoundError
exception will be raised. Parse errors will raiseNetrcParseError
with diagnostic information including the file name, line number, and terminating token.If no argument is specified on a POSIX system, the presence of passwords in the
.netrc
file will raise aNetrcParseError
if the file ownership or permissions are insecure (owned by a user other than the user running the process, or accessible for read or write by any other user). This implements security behavior equivalent to that of ftp and other programs that use.netrc
. Such security checks are not available on platforms that do not supportos.getuid()
.Alterado na versão 3.4: Adicionada a verificação de permissão POSIX.
Alterado na versão 3.7:
os.path.expanduser()
é usado para encontrar a localização do arquivo.netrc
quando file não é passado como argumento.Alterado na versão 3.10:
netrc
tenta a codificação UTF-8 antes de usar a codificação específica da localidade. A entrada no arquivo netrc não precisa mais conter todos os tokens. O valor padrão dos tokens ausentes é uma string vazia. Todos os tokens e seus valores agora podem conter caracteres arbitrários, como espaços em branco e caracteres não ASCII. Se o nome de login for anônimo, ele não acionará a verificação de segurança.
- exception netrc.NetrcParseError¶
Exceção levantada pela classe
netrc
quando erros sintáticos são encontrados no texto fonte. As instâncias desta exceção fornecem três atributos interessantes:- msg¶
Explicação textual do erro.
- filename¶
O nome do arquivo de origem.
- lineno¶
O número da linha em que o erro foi encontrado.
Objetos netrc¶
Uma instância da classe netrc
tem os seguintes métodos:
- netrc.authenticators(host)¶
Retorna uma tupla de 3 elementos
(login, conta, senha)
dos autenticadores do host. Se o arquivo netrc não contém uma entrada para o host dado, retorna a tupla associada com a entrada padrão. Se não houver nenhum host correspondente nem uma entrada padrão estiver disponível, retornaNone
.
- netrc.__repr__()¶
Despeja os dados da classe como uma string no formato de um arquivo netrc. (Isso descarta os comentários e pode reordenar as entradas.)
Instâncias de netrc
possuem variáveis de instância públicas:
- netrc.hosts¶
Dicionário mapeando nomes de host para tuplas
(login, conta, senha)
. A entrada default, se houver, é representada como um pseudo-host por esse nome.
- netrc.macros¶
Dicionário mapeando nomes de macros para listas de strings.