欢迎来到 黑吧安全网 聚焦网络安全前沿资讯,精华内容,交流技术心得!

python发送电子邮件模块smtplib

来源:本站整理 作者:佚名 时间:2016-05-30 TAG: 我要投稿

一.简介:
   电子邮件是最流行的互联网应用之一,在系统管理中,经常需要使用邮件来告警信息,业务质量报告等。方便运维人员在第一时间了解业务的服务状态,将通过使用python的smtplib模块来实现邮件的发送功能,能模拟一个smtp的客户端,通过与smtp服务器交互来实现邮件的发送功能,可以理解成foxmail的发邮件功能,在第一次使用的时候需要诶只smtp的主机地址,邮箱帐号密码等信息。python 2.4以上的版本默认就自带了smtplib模块,无需额外安装。
二.smtplib模块的常用类与方法
    smtp类定义:smtp.SMTP([host[,port[,local_hostname[,timeout]]]]),作为smtp的构造函数,功能是与smtp服务器建立连接,成功之后,就可以向服务器发送相关请求,如:登录,校验,发送,推出等。host参数为远程smtp主机地址,比如:smtp.163.com,port 25,local_hostname的作用是在本地主机的FQDN发送HELO/EHLO(表示用户身份)指令,timeout为连接或者尝试的超时时间。
#!/usr/bin/python
#coding: utf-8
#mail:su_root@126.com
#htttp://www.mrliangqi.com
import  smtplib
import  string
HOST = "smtp.126.com"
SUBJECT = "HI,test email from  python!"
TO  = "905526265@qq.com"
FROM = "su_root@126.com"
TEXT = "hello  world"
BODY = string.join((
                "From: %s" %FROM,
                "TO: %s" % TO,
                "Subject: %s" %  SUBJECT,
                "",
                TEXT
                ),"\r\n")
try:
        server = smtplib.SMTP()
        server.connect(HOST,"25")   #连接远程主机smtp主机的方法
        server.starttls()
        server.login("su_root@126.com","mailpwd")  #远程smtp主机方法。引号中是帐号和密码
        server.sendmail(FROM,[TO],BODY)
        server.quit() #断开smtp服务器
        print "Mail sent successfully"
except exception, e:
        print "Mail sendfail!"
 

【声明】:黑吧安全网(http://www.myhack58.com)登载此文出于传递更多信息之目的,并不代表本站赞同其观点和对其真实性负责,仅适于网络安全技术爱好者学习研究使用,学习中请遵循国家相关法律法规。如有问题请联系我们,联系邮箱admin@myhack58.com,我们会在最短的时间内进行处理。
  • 最新更新
    • 相关阅读
      • 本类热门
        • 最近下载