Python: Chega de enviar email sem acento!
Posted: agosto 7th, 2007 | Author: coredump | Filed under: Programação | Tags: python, smtpEntão, quem já escreveu um script Bash ou mesmo PHP já entendeu os problemas que acontecem ao tentar enviar acentos e arquivos, sem contar tentar montar uma mensagem HTML para enviar via email.
Felizmente Python já tem a solução:
from email.MIMEText import MIMEText
from email.Header import Headertexto = “Um texto qualquer com acentos a ser enviado.”
mensagem = MIMEText(texto)
remetente = ‘endereco@dequem.envia’
destino = ‘endereco@dequem.recebe’# Eu sempre uso utf-8, mas pode ser qualquer charset
mensagem.set_charset(‘utf-8′)
assunto = Header(‘Assunto com acentos’, ‘utf-8′)
mensagem['Subject'] = assunto
mensagem['From'] = remetente
mensagem['To'] = destino
E pronto. Você consegue uma cópia prontinha en ascii da mensagem para colocar como corpo do seu email usando mensagem.as_string(), pode ser usando inclusive no método sendmail da classe smtplib.SMTP (que é o ideal).
Para fazer uma mensagem HTML basta criar uma mensagem Multipart e adicionar um MIME de HTML e quem sabe de imagens. Mais informações e exemplo em: http://docs.python.org/lib/node162.html
Python comanda.
intel
2 Comments »

Comentários