"netrc" --- procesado del fichero netrc
***************************************

**Código fuente:** Lib/netrc.py

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

La clase "netrc" analiza y encapsula el formato del fichero netrc,
usado por el programa Unix **ftp** y otros clientes FTP.

class netrc.netrc([file])

   Una instancia de "netrc" o una instancia de una subclase encapsula
   la información del fichero netrc. El argumento de inicialización,
   si está presente, especifica el fichero a analizar. Si no se pasan
   argumentos, se leerá el fichero ".netrc" del directorio home del
   usuario -- determinado por "os.path.expanduser()". De lo contrario,
   se lanzará una excepción "FileNotFoundError". Los errores de
   análisis lanzarán una excepción "NetrcParseError" con información
   de diagnóstico que incluye nombre del fichero, número de línea y
   token de finalización. Si no se especifica ningún argumento en un
   sistema POSIX, la presencia de contraseñas en el fichero ".netrc"
   lanzará una excepción "NetrcParseError" si la propiedad del fichero
   o los permisos son inseguros (el propietario del fichero es
   distinto del usuario que ejecuta el proceso, o puede ser leído o
   escrito por cualquier otro usuario). Esto implementa un nivel de
   seguridad equivalente al de ftp y otros programas que usan
   ".netrc".

   Distinto en la versión 3.4: Añadida la comprobación de permisos
   POSIX.

   Distinto en la versión 3.7: "os.path.expanduser()" se usa para
   encontrar la localización del fichero ".netrc" cuando *file* no se
   pasa como argumento.

   Distinto en la versión 3.10: "netrc" prueba la codificación UTF-8
   antes de usar la codificación específica en la configuración
   regional. Ya no es necesario que la entrada en el archivo netrc
   contenga todos los tokens. El valor predeterminado para los tokens
   faltantes es una cadena de caracteres vacía. Todos los tokens y sus
   valores ahora pueden contener caracteres arbitrarios, como espacios
   en blanco y caracteres no ASCII. Si el nombre de login es anónimo,
   no se disparará el chequeo de seguridad.

exception netrc.NetrcParseError

   Exception raised by the "netrc" class when syntactical errors are
   encountered in source text.  Instances of this exception provide
   three interesting attributes:

   msg

      Textual explanation of the error.

   filename

      The name of the source file.

   lineno

      The line number on which the error was found.


Objetos netrc
=============

Una instancia "netrc" tiene los siguientes métodos:

netrc.authenticators(host)

   Retorna una 3-tupla "(login, account, password)" para autenticarse
   contra *host*. Si el fichero netrc no contiene una entrada para el
   host dado, retorna una tupla asociada con la entrada por defecto.
   Si no están disponibles ni el host correspondiente ni la entrada
   por defecto, retorna "None".

netrc.__repr__()

   Vuelca los datos de la clase como una cadena de caracteres en el
   formato de un fichero netrc. (Esto descarta comentarios y puede
   reordenar las entradas.)

Las instancias de "netrc" tienen variables de instancia públicas:

netrc.hosts

   Diccionario que asocia nombres de hosts a tuplas "(login, account,
   password)". La entrada por defecto, si existe, está representada
   como un pseudo-host por ese nombre.

netrc.macros

   Diccionario que asocia nombres de macros a listas de cadenas de
   caracteres.
