Estoy buscando un software del lado del servidor para analizar una gran cantidad de correos electrónicos y extraer la firma del correo electrónico. Muy específicamente, quiero ingresar el cuerpo de un mensaje de correo, identificar la firma y extraer los datos.
La característica más importante es el reconocimiento de patrones bien escrito. De hecho, estaría feliz con un analizador de texto, ya que me siento cómodo proporcionando solo el cuerpo como una cadena grande.
No me importa el idioma.
Puede hacer esto de manera muy simple, ya sea del lado del cliente o del servidor, utilizando algunas secuencias de comandos de Python .
Python, usando solo las bibliotecas integradas, puede:
Desafortunadamente, hay varias formas inconsistentes de denotar una firma: Mi firma producida por Thunderbird, Outlook, etc.:
--
Steve (Gadget) Barnes
Any opinions in this message are my personal opinions and do not reflect those of my employer.
Tenga en cuenta la línea que contiene solo guión, guión, espacio: este es el "estándar", pero algunos otros clientes adjuntan archivos, imágenes, montones de html, etc. Del mismo modo, las convenciones con respecto a la publicación superior, inferior o intercalada de contenido nuevo en un correo electrónico intercambio son en gran medida una cuestión de convención y el marcado del texto recibido previamente mediante sangría o prefijando cada línea del mensaje anterior con >
otros caracteres depende nuevamente tanto del cliente de correo electrónico como, a menudo, de la configuración de los usuarios.
Sugeriría usar un método de búsqueda incremental donde, posiblemente, intente buscar:
-- \n
seguido de una o más líneas que no estén en blanco. f1=re.compile(r'^-- \n(.+)', flags=re.MULTILINE+re.DOTALL)
debería hacerlo bien.Mientras trabaja en el desarrollo de su conjunto de expresiones regulares, le recomiendo enfáticamente que use un verificador de expresiones regulares de python como pythex .
Por supuesto, esto se complica por la posibilidad de adjuntar una vCard, el escaneo de una firma, etc. y por el hecho de que cualquier mensaje dado puede ser texto sin formato, html o ambos y, lo que es más molesto, algunas personas simplemente envían una palabra, u otro, documento como un correo electrónico .
Hasta donde yo sé, no existe una biblioteca actual que cubra todas estas posibilidades, posiblemente podría contribuir con una en el momento.
mika
steve barnes