1. 程式人生 > 其它 >python傳送郵件實現程式碼

python傳送郵件實現程式碼

 Python傳送郵件比較簡單,掌握兩個自帶庫 smtplib、email 即可。

使用的時候直接 import 。smtplib 負責傳送郵件,email 負責構造郵件(郵件內容,主題,收件人,抄送人等)。

一、傳送用的郵箱要先開啟SMTP、POP服務。(以qq郵箱為例)

  1.1開啟設定

  2.2、選擇:賬戶  拉到下面 ,開啟頭2個選項。

 二、實現程式碼如下

import smtplib
from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipart
from email.header import
Header server = "smtp.qq.com" sender = "[email protected]" pwd = "AAAAAAAAA" # 授權碼 receivers = "[email protected]" # 接收郵件,可設定為你的QQ郵箱或者其他郵箱 # 建立一個帶附件的例項 message = MIMEMultipart() message['From'] = Header("fengxing", 'utf-8') message['To'] = Header("執行報告", 'utf-8') subject = '自動化測試執行報告' message['Subject'
] = Header(subject, 'utf-8') # 郵件正文內容 message.attach(MIMEText('最新的測試報告', 'plain', 'utf-8')) # 構造附件1,傳送當前目錄下的 test_doc.txt 檔案 att1 = MIMEText(open('./test_doc.txt', 'rb').read(), 'base64', 'utf-8') att1["Content-Type"] = 'application/octet-stream' # 這裡的filename可以任意寫,寫什麼名字,郵件中顯示什麼名字 att1["Content-Disposition
"] = 'attachment; filename="文件"' message.attach(att1) smtpObj = smtplib.SMTP() try: smtpObj.connect(server) smtpObj.login(sender, pwd) smtpObj.ehlo() smtpObj.starttls() smtpObj.sendmail(sender, receivers, message.as_string()) print("郵件傳送成功") except smtplib.SMTPException as msg: print("Error: 無法傳送郵件") print(msg)