python模块:smtplib模块
- 2020 年 1 月 10 日
- 筆記
1.使用本地的sendmail协议进行邮件发送
格式(1):smtpObj=smtplib.SMTP([host [,port [,local_hostname]]])
host:SMTP服务器主机的IP地址或者是域名
port:服务的端口号(默认是25)
local_hostname:服务器的地址(默认是localhost)
格式(2):SMTP.sendmail(from_addr),to_addrs,msg[,mail_options,rcpt_options]
from_addr:邮件发送的地址
to_addr:邮件接收地址
msg:发送信息
(3).邮件发送代码
[root@web01 ~]# vim smtplib12.py #!/bin/env python #!-*- coding:UTF-8 -*- import smtplib from email.mime.text import MIMEText from email.header import Header sender='[email protected]' receivers='[email protected]' #如果收件人是多个可写成列表message=MIMEText('Python 邮件内容:邮件发送测试…….','plain','utf-8') message['From']=Header('邮件发送端','utf-8') message['To']=Header('收件端','utf-8') subject='Python SMTP 邮件测试' message['Subject']=Header(subject,'utf-8') try: smtpObj=smtplib.SMTP('localhost') smtpObj.sendmail(sender,receivers,message.as_string()) print "恭喜你!邮件发送成功" except smtplib.SMTPException: print "Error: 无法发送邮件" [root@web01 ~]# python smtplib12.py 恭喜你!邮件发送成功 [root@web01 ~]#
(4).邮件接收
2.使用第三方平台(QQ,网易,新浪)发送邮件,本机没有安装sendmail服务端.
(1).邮件代码
[root@web01 ~]# vim smtplib12.py
#!/bin/env python #!-*- coding:UTF-8 -*- import smtplib from email.mime.text import MIMEText from email.header import Header mail_host='smtp.126.com' mail_user='[email protected]' mail_password='z597011036zzz' sender='[email protected]' receivers=['[email protected]'] message=MIMEText('Python 邮件时间:2015-02-01','plain','utf-8') message['From']=Header("邮件发送端","utf-8") message['To']=Header("收件端","utf-8") subject="Python SMTP" message['Subject']=Header(subject,"utf-8") try: smtpObj=smtplib.SMTP() smtpObj.connect(mail_host,25) smtpObj.login(mail_user,mail_password) smtpObj.sendmail(sender,receivers,message.as_string()) print "恭喜你!邮件发送成功" smtpObj.quit() except smtplib.SMTPException as e: print "Error 无法发送邮件" print e [root@web01 ~]# python smtplib12.py 恭喜你!邮件发送成功 [root@web01 ~]#
(2).邮件发送成功