Enviando E-mails SMTP com Python

This commit is contained in:
Luiz Otávio
2022-12-29 08:40:34 -03:00
parent 12c91d2680
commit c65e6b57be
3 changed files with 74 additions and 0 deletions

47
aula185.py Normal file
View File

@@ -0,0 +1,47 @@
# Enviando E-mails SMTP com Python
import os
import pathlib
import smtplib
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText
from string import Template
from dotenv import load_dotenv # type: ignore
load_dotenv()
# Caminho arquivo HTML
CAMINHO_HTML = pathlib.Path(__file__).parent / 'aula185.html'
# Dados do remetente e destinatário
remetente = os.getenv('FROM_EMAIL', '')
destinatario = remetente
# Configurações SMTP
smtp_server = 'smtp.gmail.com'
smtp_port = 587
smtp_username = os.getenv('FROM_EMAIL', '')
smtp_password = os.getenv('EMAIL_PASSWORD', '')
# Mensagem de texto
with open(CAMINHO_HTML, 'r') as arquivo:
texto_arquivo = arquivo.read()
template = Template(texto_arquivo)
texto_email = template.substitute(nome='Helena')
# Transformar nossa mensagem em MIMEMultipart
mime_multipart = MIMEMultipart()
mime_multipart['from'] = remetente
mime_multipart['to'] = destinatario
mime_multipart['subject'] = 'Este é o assunto do e-mail'
corpo_email = MIMEText(texto_email, 'html', 'utf-8')
mime_multipart.attach(corpo_email)
# Envia o e-mail
with smtplib.SMTP(smtp_server, smtp_port) as server:
server.ehlo()
server.starttls()
server.login(smtp_username, smtp_password)
server.send_message(mime_multipart)
print('E-mail enviado com sucesso!')