1. 程式人生 > 其它 >python:使用python發郵件(qq郵箱)

python:使用python發郵件(qq郵箱)

今天打算用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()

試試執行,傳送你的郵件吧~