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='z597011036@126.com'
receivers='z597011036@qq.com' #如果收件人是多个可写成列表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='z597011036@126.com'
mail_password='z597011036zzz'
sender='z597011036@126.com'
receivers=['z597011036@qq.com']
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).邮件发送成功