Enviando emails com autenticação smtp python cgi
Publicado por Alisson Machado (última atualização em 02/07/2011)
[ Hits: 9.860 ]
Homepage: alissonmachado.com.br
Formulário que envia emails por método post para script em python, com autenticação por smtp.
Basta criar os dois arquivos, com seus respectivos conteúdos identificados:
envia_py.html
envia_email.py
# Source em Python CGI que envia emails com autenticação por smtp # feito por: # Alisson Menezes/ @TechnoFreaker # alisson.copyleft@gmail.com # # Exemplo: # From: alissonmenezes@alissonmenezes.tecnologia.ws # To: alisson.copyleft@gmail.com # assunto: Teste Python CGI # Servidor:smtp.alissonmenezes.tecnologia.ws # Senha: ***** # Mensagem:Teste de envio python 123 # # =========================================================================================== arquivo: envia_py.html =========================================================================================== <html> <head><title>Formulario de envio de email em python</title></head> <body> <h3>Envio de email por python cgi</h3> <form method="post" action="cgi-local/envia_email.py"> <table border=1> <tr> <td>From:</td><td><input type="text" name="from"></td></tr> <td>to:</td><td><input type="text" name="to"</td>></tr> <td>assunto:</td><td><input type="text" name="assunto"></td></tr> <td>servidor smtp:</td><td><input type="text" name="Servidor"></td></tr> <td>senha do from:</td><td><input type="text" name="senha"></td></tr> <td>Mensagem:</td><td><input type="text" name="mensagem"></td></tr> <td><input type="submit" value="Enviar"></td><br> </table> </form> </body> </html> ============================================================================================ ============================================================================================ envia_email.py ============================================================================================ #!/usr/bin/python # # Script recebe dados do formulario via post, com autenticacao smtp # feito por: Alisson Menezes / @TechnoFreaker / alisson.copyleft@gmail.com # # Agradecimentos: Bruno Delfo, Antonio Cooler, Diego Santos, Itiro Takeuchi, Hedy Boechat # Gukyboy, _Mlk_ e galera do twitter import cgi, cgitb import smtplib import sys import commands from email.MIMEText import MIMEText form = cgi.FieldStorage() efrom = form.getvalue('from') eto = form.getvalue('to') esubject = form.getvalue('assunto') eservidor = form.getvalue('Servidor') esenha = form.getvalue('senha') econteudo = form.getvalue('mensagem') print ("Content-type: text/html\n\n") print "<html><head><title></title></head><body>" print 'enviando email\n' try: msg1 = MIMEText('%s'% econteudo) msg1['Subject'] = econteudo msg1['From'] = efrom msg1['To'] = eto serv=smtplib.SMTP(eservidor,587) serv.ehlo() serv.starttls() serv.login(efrom,esenha) serv.sendmail(msg1['From'], msg1['To'], msg1.as_string()) serv.quit() except Exception, e: print "Erro ",e else: print "Enviado!" print "</body></html>" =============================================================================================
Armazene seus arquivos rapidamente na sua conta GMAIL
Descubra seu IP através do MeuIP
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Como renomear arquivos de letras maiúsculas para minúsculas
Imprimindo no formato livreto no Linux
Vim - incrementando números em substituição
Efeito "livro" em arquivos PDF
Como resolver o erro no CUPS: Unable to get list of printer drivers
Vou voltar moderar conteúdos de Dicas e Artigos (1)
SysAdmin ou DevOps: Qual curso inicial pra essa área? (3)
É cada coisa que me aparece! - não é só 3% (3)
Melhorando a precisão de valores flutuantes em python[AJUDA] (5)
[Python] Automação de scan de vulnerabilidades
[Python] Script para analise de superficie de ataque
[Shell Script] Novo script para redimensionar, rotacionar, converter e espelhar arquivos de imagem
[Shell Script] Iniciador de DOOM (DSDA-DOOM, Doom Retro ou Woof!)
[Shell Script] Script para adicionar bordas às imagens de uma pasta