11.8 imaplib -- Cliente del protocolo IMAP4

Este módulo define una clase, IMAP4, que encapsula una conexión a un servidor IMAP4 e impementa el protocolo de cliente IMAP4rev1 según se define en RFC 2060. Es compatible hacia atrás con los servidores IMAP4 (RFC 1730), aunque hay que destacar que la orden "STATUS" carece de soporte en IMAP4.

El módulo imaplib proporciona una sola clase:

IMAP4 ([host[, port]])
Esta clase implementa el protocolo IMAP4 real. Se crea la conexión y se determina la versión del protocolo (IMAP4 o IMAP4rev1) en el inicio de la instancia. Si no se especifica host, se utiliza '' (el nodo local). Si se omite port, se utiliza el puerto IMAP4 estándar (143).

Se definen dos excepciones com atributos de la clase IMAP4:

IMAP4.error
Se lanza esta excepción en cualquier error. El motivo de la excepción se pasa como cadena al constructor.

IMAP4.abort
Los errores del servidor IMAP4 lanzan esta excepción. Es una subclase de IMAP4.error. Hay que destacar que cerrar la instancia e instanciar una nueva suele permitir que este estado de excepción se recupere.

IMAP4.readonly
Esta excepción se lanza cuando un el servidor cambia el estado de un apartado de correos (mailbox). Es una subclase de IMAP4.error. Otro cliente ha obtenido permiso de escritura, por lo que habrá que volver a abrir el apartado para retomar el permiso de escritura.

Se definen las siguientes funciones de servicio:

Internaldate2tuple (datestr)
Convierte una cadena INTERNALDATE de IMAP4 a UTC (horario universal). Devuelve una tupla como las descritas en el módulo time.

Int2AP (num)
Convierte un entero a una cadena utilizando caracteres del conjunto [A .. P].

ParseFlags (flagstr)
Convierte una respuesta "FLAGS" de IMAP4 a una tupla de indicadores individuales.

Time2Internaldate (date_time)
Convierte una tupla de las del módulo time en una representación "INTERNALDATE" de IMAP4. Devuelve una cadena de la forma: "DD-Mmm-YYYY HH:MM:SS +HHMM" (entrecomillada).

Es importante conocer que los números de mensaje IMAP4 cambian según cambia el apartado de correos, por lo que se recomienda encarecidamente que se utilicen los UIDs en su lugar, con la orden UID.

Al final del módulo hay una sección de prueba que contiene un ejemplo de uso más extenso.

Más informació en:

Se puede hallar documentos que describen el protocolo y código fuente que lo implementa en el IMAP Information Center de la Universidad de Washington (http://www.cac.washington.edu/imap/).


Subsections

Ver Sobre este documento... para obtener información sobre sugerencias.