話不多說,能否發送成功,主要在於密碼設置是否正確!這裏拿163郵箱來說,需要用到安全密碼,而不是郵箱的登錄密碼:
安全密碼如何獲得?
結束!放上代碼,具體參數解釋的很詳細了~
import smtplib
from email.mime.text import MIMEText
from email.header import Header
def send_mail(content):
from_addr = '[email protected]'
password = 'VHAAMWMIC*****'
to_addr = '[email protected]'
smtp_server = 'smtp.163.com'
# 郵箱正文內容,第一個參數爲內容,第二個參數爲格式(plain 爲純文本),第三個參數爲編碼
msg = MIMEText(content, 'plain', 'utf-8')
# 郵件頭信息
msg['From'] = Header(from_addr)
msg['To'] = Header(to_addr)
msg['Subject'] = Header('python test')
# 開啓發信服務,這裏使用的是加密傳輸
server = smtplib.SMTP_SSL(host=smtp_server)
server.connect(smtp_server, 465)
# 登錄發信郵箱
server.login(from_addr, password)
# 發送郵件
server.sendmail(from_addr, to_addr, msg.as_string())
# 關閉服務器
server.quit()
send_mail("你好")