Ícone do site SOLOWEB Tecnologia

Enviando e-mail com Python


Na dica de hoje vamos mostrar como enviar e-mails utilizando a linguagem Python.

Uma das formas mais simples de enviar e-mails com Python é usando a biblioteca smtplib para enviar e-mails usando o protocolo SMTP (Simple Mail Transfer Protocol).

Precisando de uma solução personalizada para seu negócio? Entre em contato conosco https://soloweb.com.br

Aqui está um exemplo básico de como você pode enviar um e-mail usando o Gmail como provedor de e-mail:

import smtplib
from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipart

# Configurações do servidor SMTP do Gmail
smtp_server = 'smtp.gmail.com'
smtp_port = 587
smtp_username = 'seu_email@gmail.com'
smtp_password = 'sua_senha'

# Configurações do e-mail
sender_email = 'seu_email@gmail.com'
receiver_email = 'destinatario@example.com'
subject = 'Assunto do E-mail'
body = 'Corpo do E-mail'

# Configuração do MIMEText
message = MIMEMultipart()
message.attach(MIMEText(body, 'plain'))
message['From'] = sender_email
message['To'] = receiver_email
message['Subject'] = subject

# Conectando ao servidor SMTP e enviando o e-mail
try:
    server = smtplib.SMTP(smtp_server, smtp_port)
    server.starttls()
    server.login(smtp_username, smtp_password)
    server.sendmail(sender_email, receiver_email, message.as_string())
    server.quit()
    print('E-mail enviado com sucesso!')
except Exception as e:
    print(f'Ocorreu um erro ao enviar o e-mail: {str(e)}')

O comando from email.mime.text import MIMEText importa a classe MIMEText do módulo email.mime.text. Este módulo faz parte da biblioteca padrão do Python e é usado para criar e manipular mensagens MIME (Multipurpose Internet Mail Extensions), que são usadas para representar mensagens de e-mail.

No contexto específico desse comando:

A classe MIMEText é usada para representar partes de texto em uma mensagem MIME. Ela aceita o texto do corpo da mensagem e opcionalmente especifica o tipo de conteúdo (por exemplo, “plain” para texto simples ou “html” para HTML).

Ao usar esta classe, você pode criar uma instância de MIMEText, anexá-la a uma mensagem MIME mais ampla e, assim, compor e-mails com diferentes tipos de conteúdo de forma estruturada. No exemplo que forneci anteriormente, a classe MIMEText é usada para criar a parte de texto da mensagem de e-mail.

Já o comando from email.mime.multipart import MIMEMultipart importa a classe MIMEMultipart do módulo email.mime.multipart. Assim como MIMEText, MIMEMultipart é parte da biblioteca padrão do Python e faz parte do suporte MIME para a manipulação de e-mails.

A classe MIMEMultipart é usada para representar partes de uma mensagem MIME que contém várias partes ou anexos. Esta classe é útil quando você precisa compor um e-mail que contém mais do que apenas texto simples. Você pode adicionar diferentes partes à mensagem, como texto, imagens, ou até mesmo outros documentos anexados.

Ao criar uma instância de MIMEMultipart, você pode adicionar várias partes à mensagem usando métodos como attach(). No exemplo que forneci anteriormente, MIMEMultipart é usado para criar uma mensagem multipart contendo uma parte de texto (usando MIMEText). Isso permite a criação de e-mails mais complexos com diferentes tipos de conteúdo.

Lembre-se de substituir 'seu_email@gmail.com', 'sua_senha', 'destinatario@example.com' e outras informações relevantes com seus próprios valores.

Além disso, é uma boa prática evitar armazenar senhas diretamente no código. Considere o uso de variáveis de ambiente ou arquivos de configuração externos para armazenar informações sensíveis.

Certifique-se de que a autenticação de “Apps menos seguros” esteja ativada na sua conta do Gmail se estiver usando essa plataforma. Se estiver implementando em um ambiente de produção, você pode querer considerar o uso de bibliotecas mais avançadas como smtplib, que suportam recursos de segurança mais robustos.

Sair da versão mobile