python實現(xiàn)QQ郵箱/163郵箱的郵件發(fā)送
QQ郵箱/163郵箱的郵件發(fā)送:py文件發(fā)送郵件內(nèi)容相當于一個第三方的客戶端,借助于QQ/163郵箱服務器來發(fā)送的郵件。
主要配置:
- 導入模塊——import smtplib
- 郵箱SMTP服務器的主機地址,HOST——將來使用這個服務器收發(fā)郵件。
- 配置服務器端口,PORT ——默認的郵件端口是25(QQ郵箱是:465)
- 指定發(fā)件人和收件人,(FROM、TO)——發(fā)件人只有一個,收件人有多個,收件人格式:‘郵箱1,郵箱2,...'
- 郵件標題(SUBJECT)
- 郵件內(nèi)容(CONTENT)
郵箱相關信息的截圖:
QQ郵箱


網(wǎng)易郵箱


示例代碼:
QQ郵箱
# 用于發(fā)送郵件的模塊
import smtplib
# QQ郵件
# 1> 配置郵箱SMTP服務器的主機地址,將來使用這個服務器收發(fā)郵件。
HOST = 'smtp.qq.com'
# # 2> 配置服務的端口,默認的郵件端口是25.
PORT = '465'
# # 3> 指定發(fā)件人和收件人。
FROM = '987456123@qq.com'
TO = '1521111111@qq.com'
# # 4> 郵件標題
SUBJECT = '這是一封測試郵件'
# # 5> 郵件內(nèi)容
CONTENT = '這是<987456123@qq.com>發(fā)送過來的郵件。請注意查收!'
# # 創(chuàng)建郵件發(fā)送對象
# # 普通的郵件發(fā)送形式
# # smtp_obj = smtplib.SMTP()
# # 數(shù)據(jù)在傳輸過程中會被加密。
smtp_obj = smtplib.SMTP_SSL()
# # 需要進行發(fā)件人的認證,授權。
# # smtp_obj就是一個第三方客戶端對象
smtp_obj.connect(host=HOST, port=PORT)
# # 如果使用第三方客戶端登錄,要求使用授權碼,不能使用真實密碼,防止密碼泄露。
res = smtp_obj.login(user=FROM, password='zsgncmacktxkbdhb')
print('登錄結果:',res)
# # 發(fā)送郵件
msg = '\n'.join(['From: {}'.format(FROM), 'To: {}'.format(TO), 'Subject: {}'.format(SUBJECT), '', CONTENT])
smtp_obj.sendmail(from_addr=FROM, to_addrs=[TO], msg=msg.encode('utf-8'))
網(wǎng)易郵箱
import smtplib
# 網(wǎng)易163郵箱
HOST = 'smtp.163.com'
# 2> 配置服務的端口,默認的郵件端口是25.
PORT = '25'
# 3> 指定發(fā)件人和收件人。
FROM = 'gaoteacheradmin@163.com'
TO = 'testadmin@163.com,123456789@qq.com'
# 4> 郵件標題
SUBJECT = 'haha'
# 5> 郵件內(nèi)容
CONTENT = 'haha<testadmin@163.com>haha'
# 創(chuàng)建郵件發(fā)送對象
# 普通的郵件發(fā)送形式
smtp_obj = smtplib.SMTP()
# 數(shù)據(jù)在傳輸過程中會被加密。
# smtp_obj = smtplib.SMTP_SSL()
# 需要進行發(fā)件人的認證,授權。
# smtp_obj就是一個第三方客戶端對象
smtp_obj.connect(host=HOST, port=PORT)
# 如果使用第三方客戶端登錄,要求使用授權碼,不能使用真實密碼,防止密碼泄露。
res = smtp_obj.login(user=FROM, password='haha521')
print('登錄結果:',res)
# 發(fā)送郵件
msg = '\n'.join(['From: {}'.format(FROM), 'To: {}'.format(TO), 'Subject: {}'.format(SUBJECT), '', CONTENT])
smtp_obj.sendmail(from_addr=FROM, to_addrs=TO, msg=msg.encode('utf-8'))
源碼賞析:
登錄——login源碼

發(fā)送——sendmail源碼:

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
詳解Python prometheus_client使用方式
本文主要介紹了Python prometheus_client使用方式,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2022-02-02
極簡Python庫CherryPy構建高性能Web應用實例探索
今天為大家介紹的是 CherryPy,它是一個極簡、穩(wěn)定且功能強大的Web框架,可以幫助開發(fā)者快速構建高性能的 Web 應用程序,使用 CherryPy,你可以輕松地創(chuàng)建RESTful API、靜態(tài)網(wǎng)站、異步任務和 WebSocket 等應用2024-01-01
Python調(diào)用.net動態(tài)庫實現(xiàn)過程解析
這篇文章主要介紹了Python調(diào)用.net動態(tài)庫實現(xiàn)過程解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下2020-06-06
Python2實現(xiàn)的LED大數(shù)字顯示效果示例
這篇文章主要介紹了Python2實現(xiàn)的LED大數(shù)字顯示效果,涉及Python的簡單交互與列表相關使用技巧,需要的朋友可以參考下2017-09-09
Python UnboundLocalError和NameError錯誤根源案例解析
這篇文章主要介紹了Python UnboundLocalError和NameError錯誤根源解析,本文通過案例分析實例代碼相結合的形式給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下2018-10-10

