Enviando emails com autenticação smtp python cgi
Publicado por Alisson Machado (última atualização em 02/07/2011)
[ Hits: 10.132 ]
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>"
=============================================================================================
Mais um script pra autenticar no veloxzone
Cotação do Dólar e Euro e conversão para Real
Como extrair chaves TOTP 2FA a partir de QRCODE (Google Authenticator)
Linux em 2025: Segurança prática para o usuário
Desktop Linux em alta: novos apps, distros e privacidade marcam o sábado
IA chega ao desktop e impulsiona produtividade no mundo Linux
Novos apps de produtividade, avanços em IA e distros em ebulição agitam o universo Linux
Como instalar o repositório do DBeaver no Ubuntu
Como instalar o Plex Media Server no Ubuntu
Digitando underscore com "shift" + "barra de espaços"
Como ativar a lixeira e recuperar aquivos deletados em um servidor Linux
Como mudar o nome de dispositivos Bluetooth via linha de comando
dpkg: erro: gatilho de arquivo duplicado chamado pelo arquivo de nome (6)
Instalação não está resolvendo as dependencias (2)
Captação de áudio no zorin linux começa a diminuir com o tempo (5)
Alternativas ao Multilogin para gerenciamento de múltiplas contas/prof... (0)









