Me gustaría recuperar todo el mensaje del servidor IMAP4. En documentación de Python si encontraron esta porción de código que funciona:¿Cómo recuperar un cuerpo de correo electrónico usando imaplib en python?
>>> t, data = M.fetch('1', '(RFC822)')
>>> body = data[0][1]
Me pregunto si siempre se puede confiar en que los datos [0] [1] devuelve el cuerpo del mensaje. Cuando he ejecutado 'RFC822.SIZE' tengo solo una cadena en lugar de una tupla.
He revisado rfc1730 pero no pude determinar la estructura de respuesta adecuada para el 'RFC822'. También es difícil distinguir la estructura de resultados de búsqueda de la documentación de imaplib.
Aquí es lo que quiero llegar al recoger RFC822
:
('OK', [('1 (RFC822 {858569}', 'body of the message', ')')])
Pero cuando voy a buscar RFC822.SIZE
que estoy recibiendo:
('OK', ['1 (RFC822.SIZE 847403)'])
¿Cómo debo manejar apropiadamente los datos [0] Lista ? ¿Puedo confiar en que cuando se trata de una lista de tuplas, las tuplas tienen exactamente 3 partes y la segunda parte es la carga útil?
¿Quizás conoces alguna biblioteca mejor para imap4?
si u recuperado correctamente el cuerpo del correo puede usted por favor compartir el código? – hussain