¿Cómo puedo enviar el contenido HTML en un correo electrónico usando Python? Puedo enviar un mensaje de texto simple.
python
email
html-email
Peter Mortensen
fuente
fuente
Respuestas:
De la documentación de Python v2.7.14 - 18.1.11. correo electrónico: Ejemplos :
fuente
quit
els
objeto. ¿Qué pasa si quiero enviar múltiples mensajes? ¿Debo renunciar cada vez que envío el mensaje o enviarlos a todos (en un bucle for) y luego dejarlo de una vez por todas?# According to RFC 2046, the last part of a multipart message, in this case # the HTML message, is best and preferred.
Desearía leer esto hace 2Puede intentar usar mi módulo de correo .
fuente
use_tls=True
,usr='email'
ypwd='password'
al inicializarMailer
, funcionará.message.Body = """Some text to show when the client cannot show HTML emails"""
Aquí hay una implementación de Gmail de la respuesta aceptada:
fuente
Aquí hay una manera simple de enviar un correo electrónico HTML, simplemente especificando el encabezado Content-Type como 'text / html':
fuente
smtplib.SMTP()
ejemplo simple , que no utiliza tls. Usé esto para un script interno en el trabajo donde usamos ssmtp y un mailhub local. Además, este ejemplo faltas.quit()
.Aquí hay un código de muestra. Esto está inspirado en el código que se encuentra en el sitio de Python Cookbook (no puedo encontrar el enlace exacto)
fuente
para python3, mejore la respuesta de @taltman :
email.message.EmailMessage
lugar deemail.message.Message
construir correo electrónico.email.set_content
func, asignesubtype='html'
argumento. en lugar de func de bajo nivelset_payload
y agregue encabezado manualmente.SMTP.send_message
func en lugar deSMTP.sendmail
func para enviar correos electrónicos.with
bloque para cerrar automáticamente la conexión.fuente
En realidad, yagmail tomó un enfoque un poco diferente.
Por defecto enviará HTML, con respaldo automático para lectores de correo electrónico incapaces. Ya no es el siglo XVII.
Por supuesto, se puede anular, pero aquí va:
Para obtener instrucciones de instalación y muchas más funciones excelentes, eche un vistazo a github .
fuente
Aquí hay un ejemplo de trabajo para enviar mensajes de texto sin formato y correos electrónicos HTML desde Python usando
smtplib
junto con las opciones CC y BCC.https://varunver.wordpress.com/2017/01/26/python-smtplib-send-plaintext-and-html-emails/
fuente
Aquí está mi respuesta para AWS usando boto3
fuente
La solución más simple para enviar correos electrónicos desde la cuenta de la organización en Office 365:
fuente