首頁 >後端開發 >Python教學 >Python使用QQ郵箱傳送Email的方法實例

Python使用QQ郵箱傳送Email的方法實例

高洛峰
高洛峰原創
2017-02-13 13:43:221663瀏覽

前言

其實Python使用QQ郵箱發送Email程式碼很簡單,短短幾行程式碼就可以實現這個功能。

使用到的模組有smtplib和email這個兩個模組,關於這兩個模組的方法就不多說了。不了解的朋友可以查看這篇文章:python中使用smtplib和email模組發送郵件實例

我們先說說網上常用的使用這那兩個模組發送郵件的方法

代碼如下:

import smtplib
from email.mime.text import MIMEText
from email.header import Header

def SendEmail(fromAdd, toAdd, subject, attachfile, htmlText):
 strFrom = fromAdd;
 strTo = toAdd;
 msg =MIMEText(htmlText);
 msg['Content-Type'] = 'Text/HTML';
 msg['Subject'] = Header(subject,'gb2312');
 msg['To'] = strTo;
 msg['From'] = strFrom;
 
 smtp = smtplib.SMTP('smtp.qq.com');
 smtp.login('501257367@qq.com','password');
 try:
 smtp.sendmail(strFrom,strTo,msg.as_string());
 finally:
 smtp.close;

if __name__ == "__main__":
 SendEmail("501257367@qq.com","501257367@qq.com","","hello","hello world");

運行結果:

smtplib.SMTPAuthenticationError: (530, 'Error: A secure connection is requiered(such as ssl). More information at http://www.php.cn/')

報錯,需要一個安全的連接,例如對SSL,因此接下來的方式我們需要做一些準備,打開qq郵箱,點擊設定->

帳戶,找到POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服務,開啟IMAP/SMTP服務,然後根據要求使用手機發送到指定號碼,獲取授權碼,

這個授權碼就是你接下來登入要使用的密碼,設定完成,上碼

import smtplib
from email.mime.text import MIMEText
_user = "你的qq邮箱"
_pwd = "你的授权码"
_to = "501257367@163.com"

msg = MIMEText("Test")
msg["Subject"] = "don't panic"
msg["From"] = _user
msg["To"] = _to

try:
 s = smtplib.SMTP_SSL("smtp.qq.com", 465)
 s.login(_user, _pwd)
 s.sendmail(_user, _to, msg.as_string())
 s.quit()
 print "Success!"
except smtplib.SMTPException,e:
 print "Falied,%s"%e

Q郵箱發送Email的方法實例相關文章請關注PHP中文網!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn