python:使用python發郵件(qq郵箱)
阿新 • • 發佈:2021-11-09
今天打算用QQ郵箱作為示例使用的郵箱,其他郵箱基本操作一樣。
第一步:首先獲取QQ郵箱授權碼
1、進入QQ郵箱首頁,點選設定,如圖,
2、然後點選賬戶
3、拉到這個地方,開啟POP3/SMTP服務服務,按照指示操作獲取你的郵箱授權碼
4、這個就是你的授權碼,儲存下來等會用
第二步,python程式碼呼叫傳送QQ郵件
# coding:utf-8
import smtplib
from email.mime.text import MIMEText
from email.header import Header
class Mail:
def __init__(self):
# 第三方 SMTP 服務
self.mail_host = "smtp.qq.com" # 設定伺服器:這個是qq郵箱伺服器,直接複製就可以
self.mail_pass = "xxxxxxx" # 剛才我們獲取的授權碼
self.sender = '[email protected]' # 你的郵箱地址
self.receivers = ['[email protected]'] # 收件人的郵箱地址,可設定為你的QQ郵箱或者其他郵箱,可多個
def send(self):
content = '你要傳送的郵件內容'
message = MIMEText(content, 'plain', 'utf-8')
message['From'] = Header("發件人名字,可自由填寫", 'utf-8')
message['To'] = Header("收件人名字,可自由填寫", 'utf-8')
subject = 'xxxxx' # 傳送的主題,可自由填寫
message['Subject'] = Header(subject, 'utf-8')
try:
smtpObj = smtplib.SMTP_SSL(self.mail_host, 465)
smtpObj.login(self.sender, self.mail_pass)
smtpObj.sendmail(self.sender, self.receivers, message.as_string())
smtpObj.quit()
print('郵件傳送成功')
except smtplib.SMTPException as e:
print('郵件傳送失敗')
if __name__ == '__main__':
mail = Mail()
mail.send()