Estoy escribiendo un script de Python para procesar correos electrónicos devueltos desde Procmail. Como se sugiere en este question, estoy usando la siguiente configuración de Procmail:Analizando el correo electrónico con Python
:0:
|$HOME/process_mail.py
Mi script process_mail.py está recibiendo un correo electrónico a través de la entrada estándar como esto:
From hostname Tue Jun 15 21:43:30 2010
Received: (qmail 8580 invoked from network); 15 Jun 2010 21:43:22 -0400
Received: from mail-fx0-f44.google.com (209.85.161.44)
by ip-73-187-35-131.ip.secureserver.net with SMTP; 15 Jun 2010 21:43:22 -0400
Received: by fxm19 with SMTP id 19so170709fxm.3
for <[email protected]>; Tue, 15 Jun 2010 18:47:33 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.103.84.1 with SMTP id m1mr2774225mul.26.1276652853684; Tue, 15
Jun 2010 18:47:33 -0700 (PDT)
Received: by 10.123.143.4 with HTTP; Tue, 15 Jun 2010 18:47:33 -0700 (PDT)
Date: Tue, 15 Jun 2010 20:47:33 -0500
Message-ID: <[email protected]>
Subject: TEST 12
From: Full Name <[email protected]>
To: [email protected]
Content-Type: text/plain; charset=ISO-8859-1
ONE
TWO
THREE
Estoy tratando de analizar el mensaje de esta manera:
>>> import email
>>> msg = email.message_from_string(full_message)
Quiero obtener campos de mensaje como 'Desde', 'Hasta' y 'Asunto'. Sin embargo, el objeto de mensaje no contiene ninguno de estos campos.
¿Qué estoy haciendo mal?
¿Cómo obtener el cuerpo del correo electrónico aquí? – Anuj
Si realmente quieres todo el cuerpo del correo electrónico RFC2822 con estructuras MIME en bruto y todo, analizar el mensaje en Python es básicamente superfluo; el cuerpo lo es todo después de la primera línea vacía. Normalmente, con mensajes modernos, quiere analizar la estructura MIME y extraer una o más partes del cuerpo. – tripleee