本文實例為大家分享了Python3實現發送QQ郵件功能:附件,供大家參考,具體內容如下
可以成功發送郵件附件,但是郵件主要內容無法發送,有空再去找找原因
import smtplibfrom email.mime.text import MIMETextfrom email.utils import formataddrfrom email.header import Headermy_sender = 'xxxx@qq.com'  # 發件人郵箱賬號my_pass = 'xxxxx'       # 發件人郵箱密碼(當時申請smtp給的口令)my_user = 'xxxxxxx@qq.com'   # 收件人郵箱賬號,我這邊發送給自己rdef mail():  ret = True  try:    msg = MIMEText(open('a.txt', 'rb').read(), 'base64', 'utf-8')    msg["Content-Type"] = 'application/octet-stream'    msg["Content-Disposition"] = 'attachment; filename="a.txt"'    msg['From']=formataddr(["xxxxx", my_sender])      # 括號里的對應發件人郵箱昵稱、發件人郵箱賬號    msg['To']=formataddr(["xxxxxx", my_user])            # 括號里的對應收件人郵箱昵稱、收件人郵箱賬號    msg['Subject']= '郵件主題'           # 郵件的主題,也可以說是標題    server=smtplib.SMTP_SSL("smtp.qq.com", 465)      # 發件人郵箱中的SMTP服務器,端口是465    server.login(my_sender, my_pass)      # 括號中對應的是發件人郵箱賬號、郵箱密碼    server.sendmail(my_sender, [my_user,], msg.as_string())      # 括號中對應的是發件人郵箱賬號、收件人郵箱賬號、發送郵件    server.quit() # 關閉連接  except Exception: # 如果 try 中的語句沒有執行,則會執行下面的 ret=False    ret = False  return retret = mail()if ret:  print("郵件發送成功")else:  print("郵件發送失敗")以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持武林站長站。
新聞熱點
疑難解答