Python 使用SMTP 實現發郵件功能
阿新 • • 發佈:2019-01-08
# -*- coding: utf-8 -*- #強制使用utf-8編碼格式
import smtplib #載入SMTP模組
from email.mime.text import MIMEText
from email.utils import formataddr
EmailSender = "發件人@163.com" ##發件人的郵箱賬號
PassWord = '密碼' ####發件人對用上述郵箱的密碼
EmailReciever = "收件人@xx.com"###收件人的郵箱
EmailHost = "smtp.163.com" ####使用的SMTP伺服器
try:
txt = "這是來自Python的一封測試郵件"
message = MIMEText(txt,'plain','utf-8')
message['From'] = formataddr(['發件人暱稱',EmailSender])##括號裡面對應發件人的郵箱暱稱、發件人的郵箱賬號
message['To'] = formataddr(['收件人暱稱',EmailReciever])##括號裡面對應收件人的暱稱、收件人的郵箱賬號
message['Subject'] = "測試郵件(Test Email)"##郵件主題,也可以說是標題
smtpObj = smtplib.SMTP() ###例項化
smtpObj.connect(EmailHost,25) ##連結伺服器,埠號預設是25
smtpObj.login(EmailSender,PassWord)##括號中對應的是發件人的郵箱賬號、郵箱密碼
smtpObj.sendmail(EmailSender,EmailReciever,message.as_string())##括號中對應的是發件人的郵箱賬號、收件人的郵箱賬號、將message轉為字串
smtpObj.quit()##關閉連線
except Exception,e:
print e
print "Proogram ERROR,Please check and try again"
import smtplib #載入SMTP模組
from email.mime.text import MIMEText
from email.utils import formataddr
EmailSender = "發件人@163.com" ##發件人的郵箱賬號
PassWord = '密碼' ####發件人對用上述郵箱的密碼
EmailReciever = "收件人@xx.com"###收件人的郵箱
EmailHost = "smtp.163.com" ####使用的SMTP伺服器
try:
txt = "這是來自Python的一封測試郵件"
message = MIMEText(txt,'plain','utf-8')
message['From'] = formataddr(['發件人暱稱',EmailSender])##括號裡面對應發件人的郵箱暱稱、發件人的郵箱賬號
message['To'] = formataddr(['收件人暱稱',EmailReciever])##括號裡面對應收件人的暱稱、收件人的郵箱賬號
message['Subject'] = "測試郵件(Test Email)"##郵件主題,也可以說是標題
smtpObj = smtplib.SMTP() ###例項化
smtpObj.connect(EmailHost,25) ##連結伺服器,埠號預設是25
smtpObj.login(EmailSender,PassWord)##括號中對應的是發件人的郵箱賬號、郵箱密碼
smtpObj.sendmail(EmailSender,EmailReciever,message.as_string())##括號中對應的是發件人的郵箱賬號、收件人的郵箱賬號、將message轉為字串
smtpObj.quit()##關閉連線
except Exception,e:
print e
print "Proogram ERROR,Please check and try again"