python實現發送QQ郵件(可加附件)

本文實例為大傢分享瞭python實現發送QQ郵件的具體代碼,供大傢參考,具體內容如下

東西比較簡單,簡單講一下,直接貼代碼瞭,其他郵箱都類似。

1.首先在qq 郵箱裡面把stmp服務 打開

2.拉到下面,開啟第一個,發送短信驗證後會得到一個授權碼: 

3.代碼,要註意的地方我都貼瞭註釋:

# coding=utf-8
import smtplib
from email.mime.text import MIMEText
from email.mime.image import MIMEImage
from email.mime.multipart import MIMEMultipart
from email.mime.application import MIMEApplication
 
#寫成瞭一個通用的函數接口,想直接用的話,把參數的註釋去掉就好
def sen_email(msg_from,passwd,msg_to,text_content,file_path=None):
 #msg_from = '[email protected]' # 發送方郵箱
 #passwd = 'zjvoymwngfhigjss' # 填入發送方郵箱的授權碼(就是剛剛你拿到的那個授權碼)
 #msg_to = '[email protected]' # 收件人郵箱
 
 msg = MIMEMultipart()
 
 subject = "Test My Email" # 主題
 #text_content = "你好啊,你猜這是誰發的郵件"
 text = MIMEText(text_content)
 msg.attach(text)
 
 
 #docFile = 'C:/Users/main.py' 如果需要添加附件,就給定路徑
 if file_path: #最開始的函數參數我默認設置瞭None ,想添加附件,自行更改一下就好
 docFile = file_path
 docApart = MIMEApplication(open(docFile, 'rb').read())
 docApart.add_header('Content-Disposition', 'attachment', filename=docFile)
 msg.attach(docApart)
 
 
 msg['Subject'] = subject
 msg['From'] = msg_from
 msg['To'] = msg_to
 
 try:
 s = smtplib.SMTP_SSL("smtp.qq.com", 465)
 s.login(msg_from, passwd)
 s.sendmail(msg_from, msg_to, msg.as_string())
 print "發送成功"
 except smtplib.SMTPException, e:
 print "發送失敗"
 finally:
 s.quit()

以上就是本文的全部內容,希望對大傢的學習有所幫助,也希望大傢多多支持WalkonNet。

推薦閱讀: