淺談Python用QQ郵箱發(fā)送郵件時(shí)授權(quán)碼的問(wèn)題
QQ郵箱最新推出了一個(gè)授權(quán)碼,需已驗(yàn)證的手機(jī)號(hào)向QQ郵箱服務(wù)器發(fā)送一條短信獲得。該授權(quán)碼用于第三方客戶(hù)端登錄,代替了第三方登錄時(shí)使用的個(gè)人郵箱密碼。
在測(cè)試過(guò)程中遇到兩個(gè)問(wèn)題:
1.提示需建立SSL安全連接。于是將smtplib.SMTP() 改成了smtplib.SMTP_SSL()
2.運(yùn)行代碼后,程序一直運(yùn)行,但沒(méi)有任何反應(yīng),等了五分鐘左右,最后只好ctrl+c停止。查原因才知道,QQ郵箱的SMTP服務(wù)端口不是默認(rèn)的25.改為465之后就好了。
(使用標(biāo)準(zhǔn)的25端口連接SMTP服務(wù)器時(shí),使用的是明文傳輸,發(fā)送郵件的整個(gè)過(guò)程可能會(huì)被竊聽(tīng)。要更安全地發(fā)送郵件,可以加密SMTP會(huì)話(huà),實(shí)際上就是先創(chuàng)建SSL安全連接,然后再使用SMTP協(xié)議發(fā)送郵件。)
3.運(yùn)行提示535錯(cuò)誤,說(shuō)授權(quán)error。才知道是那個(gè)授權(quán)碼的原因。于是趕緊獲取郵箱的授權(quán)碼。

3.運(yùn)行提示535錯(cuò)誤,說(shuō)授權(quán)error。才知道是那個(gè)授權(quán)碼的原因。于是趕緊獲取郵箱的授權(quán)碼。

最后測(cè)試終于好了,代碼如下:
#coding:utf-8
import smtplib
from email.mime.text import MIMEText
from email.header import Header
# 第三方 SMTP 服務(wù)
mail_host="smtp.qq.com" #設(shè)置服務(wù)器
mail_user="******@qq.com" #用戶(hù)名
mail_pass="*********" #口令,QQ郵箱是輸入授權(quán)碼,在qq郵箱設(shè)置 里用驗(yàn)證過(guò)的手機(jī)發(fā)送短信獲得,不含空格
sender = '******qq.com'
receivers = ['******@qq.com','****@sina.com.cn'] # 接收郵件,可設(shè)置為你的QQ郵箱或者其他郵箱
message = MIMEText('a test for python', 'plain', 'utf-8')
message['From'] = Header("ppyy", 'utf-8')
message['To'] = Header("you", 'utf-8')
subject = 'my test'
message['Subject'] = Header(subject, 'utf-8')
try:
smtpObj = smtplib.SMTP_SSL(mail_host, 465)
smtpObj.login(mail_user,mail_pass)
smtpObj.sendmail(sender, receivers, message.as_string())
smtpObj.quit()
print u"郵件發(fā)送成功"
except smtplib.SMTPException,e:
print e
以上這篇淺談Python用QQ郵箱發(fā)送郵件時(shí)授權(quán)碼的問(wèn)題就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
- python使用QQ郵箱實(shí)現(xiàn)自動(dòng)發(fā)送郵件
- python3通過(guò)qq郵箱發(fā)送郵件以及附件
- python實(shí)現(xiàn)QQ郵箱發(fā)送郵件
- Python使用QQ郵箱發(fā)送郵件實(shí)例與QQ郵箱設(shè)置詳解
- Python使用QQ郵箱發(fā)送郵件報(bào)錯(cuò)smtplib.SMTPAuthenticationError
- python3使用QQ郵箱發(fā)送郵件
- Python利用QQ郵箱發(fā)送郵件的實(shí)現(xiàn)方法(分享)
- Python實(shí)現(xiàn)給qq郵箱發(fā)送郵件的方法
- Python登錄QQ郵箱發(fā)送郵件的實(shí)現(xiàn)示例
相關(guān)文章
python獲取當(dāng)前文件所在目錄、獲取上級(jí)目錄的坑及解決
這篇文章主要介紹了python獲取當(dāng)前文件所在目錄、獲取上級(jí)目錄的坑及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-08-08
給我一面國(guó)旗 python幫你實(shí)現(xiàn)
這篇文章主要為大家詳細(xì)介紹了Python之給我一面國(guó)旗的實(shí)現(xiàn)代碼,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-09-09
Python繪圖實(shí)現(xiàn)臺(tái)風(fēng)路徑可視化代碼實(shí)例
這篇文章主要介紹了Python繪圖實(shí)現(xiàn)臺(tái)風(fēng)路徑可視化代碼實(shí)例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-10-10
Python實(shí)現(xiàn)讀取目錄所有文件的文件名并保存到txt文件代碼
這篇文章主要介紹了Python實(shí)現(xiàn)讀取目錄所有文件的文件名并保存到txt文件代碼,本文分別使用os.listdir和os.walk實(shí)現(xiàn)給出兩段實(shí)現(xiàn)代碼,需要的朋友可以參考下2014-11-11
python scatter散點(diǎn)圖用循環(huán)分類(lèi)法加圖例
這篇文章主要為大家詳細(xì)介紹了python scatter散點(diǎn)圖用循環(huán)分類(lèi)法加圖例,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-03-03
python生成requirements.txt文件的兩種方法
requirements.txt 文件是項(xiàng)目的依賴(lài)包及其對(duì)應(yīng)版本號(hào)的信息列表,本文主要介紹了python生成requirements.txt文件的兩種方法,具有一定的參考價(jià)值,感興趣的可以了解一下2023-12-12
Python與AI分析時(shí)間序列數(shù)據(jù)
預(yù)測(cè)給定輸入序列中的下一個(gè)是機(jī)器學(xué)習(xí)中的另一個(gè)重要概念.本章為您提供有關(guān)分析時(shí)間序列數(shù)據(jù)的詳細(xì)說(shuō)明,有需要的朋友可以借鑒參考下,希望能夠有所幫助2022-05-05
Python使用thread模塊實(shí)現(xiàn)多線程的操作
線程(Threads)是操作系統(tǒng)提供的一種輕量級(jí)的執(zhí)行單元,可以在一個(gè)進(jìn)程內(nèi)并發(fā)執(zhí)行多個(gè)任務(wù),每個(gè)線程都有自己的執(zhí)行上下文,包括棧、寄存器和程序計(jì)數(shù)器,本文給大家介紹了Python使用thread模塊實(shí)現(xiàn)多線程的操作,需要的朋友可以參考下2024-10-10

