Cómo enviar correo electrónico en Python
1. Inicie sesión en el servicio de correo electrónico
¿Copiar el código? El código es el siguiente:
#!/usr/bin/env?python?
#?-*-?coding:?utf-8?-*-?
#python2.7x?
#send_simple_email_by_account.py?@2014 -07-30? p>
#author:?orangleliu?
'''''?
¿Usar Python para escribir correos electrónicos?sencillo?
¿Usar el buzón de 126? Service?
'''
import?smtplib?
from?email.mime.text?import? MIMEText?
¿Servidor SMTP?=?'smtp.126.com'?
remitente?=?'liuzhizhi123@126.com'?
¿contraseña?= ?"xxxx"?
¿mensaje?=?'¿Envío?un?mensaje?por?Python.?¿Hola'?
msg?=?MIMEText(mensaje)? /p>
msg[ 'Asunto']?=?'¿Prueba?Correo electrónico?por?Python'?
msg['From']?=?remitente?
msg['Para']?= ?destino?
servidor de correo?=?smtplib.SMTP(servidor SMTP,?25)?
servidor de correo.login(remitente,?contraseña)?
servidor de correo. sendmail(remitente,?[remitente],?msg.as_string())?
servidor de correo.quit()?
imprimir?'enviar? email?success'?
2. ¿Llamar al comando sendmail? (linux)
¿Copiar el código? El código es el siguiente:
#?-* -?codificación:?utf-8?-*-?
#python2.7x?
#send_email_by_.py?
#autor:?orangleliu?
#date:?2014- 08-15?
'''''?
¿Estás usando el comando sendmail?
En este momento, es posible que el correo aún no se haya enviado. ¿Es posible que sea necesario cambiar la configuración del nombre de host?
'''?
from?email.mime.text?import? MIMEText?
de?subproceso?import?Popen,? PIPE?
def?get_sh_res():?
p?=?Popen(['/ Application/2.0/nirvana/logs/log.sh'],?stdout=PIPE )?
return?str(p.communicate()[0])?
def? mail_send(remitente,?receptor):?
¿imprimir? "get?email?info..."?
msg?=?MIMEText(get_sh_res())?
msg["De"]?=?remitente?
msg["Para"]?=?
¿receptor?
msg["Subject"]?=?"Yestoday?interface?log?results"?
p?=?Popen(["/usr/sbin/sendmail" ,?"-t"],?stdin=PIPE)?
res?=?p.communicate(msg.as_string())?
imprimir?'correo?enviado? ...'?
si?__nombre__?==?"__main__":?
s?=?"957748332@qq.com"?
r?=?"zhizhi.liu@chinacache.com"?
mail_send(s,?r)?
3. Utilice el servicio smtp para enviar (servidor local o remoto) <. /p>
¿Copiar el código? El código es el siguiente:
#!/usr/bin/env?python?
#?-*-?coding:? utf-8 ?-*-?
#python2.7x?
#send_email_by_smtp.py?
#autor:?orangleliu?
# fecha:?2014-08-15?
'''''?
¿Utilizar el servicio SMTP local para enviar correos electrónicos en Linux?
Requisitos previos Habilitar el servicio smtp, ¿cómo comprobarlo?
#ps?-ef|grep?sendmail?
#telnet?localhost?25
¿En este momento? , el correo electrónico todavía está allí. ¿Quizás se pueda enviar? ¿Es posible que sea necesario cambiar la configuración del nombre de host?
'''?
¿importar?smtplib?
desde?email.mime.text?import?MIMEText?
desde?subprocess?import?Popen,?PIPE?
def?get_sh_res():?
p?=?Popen(['/ Application/2.0/nirvana/logs/log.sh'],?stdout=PIPE)?
return?str(p.communicate()[0] )?
def? mail_send(remitente,?receptor):?
msg?=?MIMEText(get_sh_res())?
msg["De" ]?=?remitente?
msg["Para"]?=?receptor?
msg["Asunto"]?=?"Sí hoy?interfaz?log?resultados"?
s?=? smtplib.SMTP('localhost')?
s.sendmail(remitente,?[receptor],?msg.as_string())?
s.quit()?
p>¿imprimir?'enviar?correo?terminado...'
si?__nombre__?==?"__principal__":?
s?=?"zhizhi .liu@chinacache.com"?
r?=?s?
mail_send(s,?r) p>