Neste tutorial, você aprenderá como enviar e-mails usando Python. O Python fornece um módulo simples e fácil de usar chamado smtplib para enviar e-mails. Você também obterá uma breve compreensão de como funcionam os e-mails e como integrar texto, anexos e HTML em seu e-mail.
Aqui, vamos construir este projeto do zero e tentar entender como podemos enviar e-mails usando Python. Para enviar e-mail usando Python, seguimos estas etapas.
Etapa 1: configurar o servidor SMTP
Para enviar e-mail usando Python, use o cliente smtplib para se conectar a um servidor SMTP distante se sua estação de trabalho local ainda não executar um servidor SMTP. A menos que você use um serviço de webmail (como Hotmail ou Google Mail), seu provedor de e-mail deve ter fornecido a você as informações do servidor de e-mail de saída listadas abaixo, que você pode enviar a eles. As informações do servidor de e-mail são as seguintes:
mailserver = smtplib.SMTP('smtp.gmail.com',587)
Etapa 2: criar os objetos de mensagem MIMEMultipart e carregá-los com os cabeçalhos apropriados:
Em primeiro lugar, crie uma instância de MIMEMultipart, ou seja, msg . Depois disso, armazene o assunto do e-mail, o e-mail do remetente e o e-mail do destinatário.
msg = MIMEMultipart()
msg['From'] = "me@gmail.com"
msg['To'] = "you@gmail.com"
msg['Subject'] = "Email using Python"
Passo 3: Adicionando o corpo da mensagem:
Para enviar um e-mail usando Python, escreva o corpo da mensagem que deseja enviar. Agora anexe o corpo com a msg de instância usando a função attach. Vamos ver o código de exemplo abaixo.
message = 'Scaler Topics'
msg.attach(MIMEText(message))
Passo 4: Use o servidor SMTP para enviar a mensagem:
Portanto, após configurar a conexão, você pode enviar o e-mail usando a função sendmail(), que recebe 3 parâmetros, ou seja, Correio do Receptor, Correio do Remetente e Mensagem.
mailserver.sendmail('me@gmail.com','you@gmail.com',msg.as_string())
Código completo:
# libraries to be imported
import smtplib
from email.MIMEMultipart import MIMEMultipart
from email.MIMEText import MIMEText
# instance of MIMEMultipart
msg = MIMEMultipart()
# storing the sender's email address
msg['From'] = 'me@gmail.com'
# storing the receiver's email address
msg['To'] = 'you@gmail.com'
# storing the subject
msg['Subject'] = 'Email using Python'
# Store the body of the mail
message = 'Scaler Topics'
# attach the body with the msg instance
msg.attach(MIMEText(message))
# creates SMTP session
mailserver = smtplib.SMTP('smtp.gmail.com', 587)
# identify ourselves to smtp gmail client
mailserver.ehlo()
# secure our email with tls encryption
mailserver.starttls()
# re-identify ourselves as an encrypted connection
mailserver.ehlo()
# Authentication
mailserver.login('me@gmail.com', 'mypassword')
mailserver.sendmail('me@gmail.com', 'you@gmail.com', msg.as_string())
mailserver.quit()
Feliz Codificação!!!