# coding:utf-8 #強(qiáng)制使用utf-8編碼格式
import smtplib # 加載smtplib模塊
from email.mime.text import MIMEText
from email.utils import formataddr
from email.header import Header
#需要設(shè)置的內(nèi)容如下所示:
my_sender = 'xxx@163.com' # 發(fā)件人郵箱賬號(hào),為了后面易于維護(hù),所以寫(xiě)成了變量
my_user = 'yyy@163.com' # 收件人郵箱賬號(hào),為了后面易于維護(hù),所以寫(xiě)成了變量
my_authorization_code = '*********' #在開(kāi)啟SMTP時(shí)的授權(quán)碼
my_smtp = 'smtp.163.com' #163的SMTP服務(wù)
my_smtp_port = 25 #163的SMTP服務(wù)的端口號(hào)
def mail():
ret = True
try:
msg = MIMEText('我是測(cè)試內(nèi)容', 'plain', 'utf-8')
msg['From'] = formataddr(["username", my_sender]) # 括號(hào)里的對(duì)應(yīng)發(fā)件人郵箱昵稱、發(fā)件人郵箱賬號(hào)
msg['To'] = formataddr(["你的名稱", my_user]) # 括號(hào)里的對(duì)應(yīng)收件人郵箱昵稱、收件人郵箱賬號(hào)
subject = 'Python SMTP 郵件測(cè)試'
msg['Subject'] = Header(subject, 'utf-8')
server = smtplib.SMTP(my_smtp, my_smtp_port) # 發(fā)件人郵箱中的SMTP服務(wù)器,端口是25
server.login(my_sender, my_authorization_code) # 括號(hào)中對(duì)應(yīng)的是發(fā)件人郵箱賬號(hào)、在開(kāi)啟SMTP時(shí)的授權(quán)碼
server.sendmail(my_sender, my_user, msg.as_string()) # 括號(hào)中對(duì)應(yīng)的是發(fā)件人郵箱賬號(hào)、收件人郵箱賬號(hào)、發(fā)送郵件
server.quit() # 這句是關(guān)閉連接的意思
except Exception: # 如果try中的語(yǔ)句沒(méi)有執(zhí)行,則會(huì)執(zhí)行下面的ret=False
ret = False
return ret
ret = mail()
if ret:
print("發(fā)送郵件成功!") # 如果發(fā)送成功,稍等20秒左右就可以收到郵件
else:
print("發(fā)送郵件失敗")