2010-07-19 14 views
19

quiero analizar algunos correos electrónicos de la bandeja de entrada de un usuario s, pero cuando lo haga:Fetch un correo electrónico con imaplib pero no marcarlo como se ve

typ, msg_data = imap_conn.fetch(uid, '(RFC822)') 

Marca el correo electrónico como visto o leído. Esta no es la funcionalidad deseada. ¿Sabes cómo puedo mantener el correo electrónico en su mirada anterior ya sea VISTO o NO VISTO?

Respuesta

33

También puede establecer read_only a cierto cuando se selecciona la carpeta:

imap_conn.select('Inbox', readonly=True) 
+0

Esto no es adecuado si desea modificar la carpeta por otros motivos (por ejemplo, eliminar algunos de los mensajes que ha echado un vistazo porque son correo no deseado, o lo que sea). – tripleee

1

Puede usar (RFC822.PEEK) como el argumento "message-parts", según RFC 1730 (no he verificado qué servidores realmente implementan eso correctamente, pero no parece difícil para ellos).

+1

Desafortunadamente no funcionó con Gmail pero la respuesta anterior sí. ¡Gracias de todos modos! – PanosJee

16

El siguiente debería funcionar:

typ, msg_data = imap_conn.fetch(uid, '(BODY.PEEK[HEADER])') 

o BODY.PEEK[TEXT], etc.

Cuestiones relacionadas