国产99久久精品_欧美日本韩国一区二区_激情小说综合网_欧美一级二级视频_午夜av电影_日本久久精品视频

最新文章專題視頻專題問答1問答10問答100問答1000問答2000關(guān)鍵字專題1關(guān)鍵字專題50關(guān)鍵字專題500關(guān)鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關(guān)鍵字專題關(guān)鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
當(dāng)前位置: 首頁 - 科技 - 知識(shí)百科 - 正文

Python使用smtplib模塊發(fā)送電子郵件的流程詳解

來源:懂視網(wǎng) 責(zé)編:小采 時(shí)間:2020-11-27 14:29:15
文檔

Python使用smtplib模塊發(fā)送電子郵件的流程詳解

Python使用smtplib模塊發(fā)送電子郵件的流程詳解:1、登錄SMTP服務(wù)器 首先使用網(wǎng)上的方法(這里使用163郵箱,smtp.163.com是smtp服務(wù)器地址,25為端口號(hào)): import smtplib server = smtplib.SMTP('smtp.163.com', 25) server.login('j_hao104@163.com', 'passw
推薦度:
導(dǎo)讀Python使用smtplib模塊發(fā)送電子郵件的流程詳解:1、登錄SMTP服務(wù)器 首先使用網(wǎng)上的方法(這里使用163郵箱,smtp.163.com是smtp服務(wù)器地址,25為端口號(hào)): import smtplib server = smtplib.SMTP('smtp.163.com', 25) server.login('j_hao104@163.com', 'passw
1、登錄SMTP服務(wù)器
首先使用網(wǎng)上的方法(這里使用163郵箱,smtp.163.com是smtp服務(wù)器地址,25為端口號(hào)):

import smtplib
server = smtplib.SMTP('smtp.163.com', 25)
server.login('j_hao104@163.com', 'password')
Traceback (most recent call last):
 File "C:/python/t.py", line 192, in 
 server.login('j_hao104@163.com', 'password')
 File "C:Python27libsmtplib.py", line 622, in login
 raise SMTPAuthenticationError(code, resp)
smtplib.SMTPAuthenticationError: (535, 'Error: authentication failed')

發(fā)現(xiàn)返回:

smtplib.SMTPAuthenticationError: (535, 'Error: authentication failed')

,提示驗(yàn)證失敗。
有說python不支持SMTP服務(wù),或是服務(wù)沒開啟之類的。但是我想起上次我用foxmail登錄我的163郵箱的時(shí)候,郵箱密碼都輸對(duì)了還是提示我密碼錯(cuò)誤,最后的解決辦法是:像QQ和163郵箱現(xiàn)在都有個(gè)客戶端密碼,用第三方登錄時(shí)需用客戶端密碼登錄才行,python也是如此,因此去設(shè)置好客戶端密碼,再用客戶端密碼登錄。

2016627144753064.png (700×421)

import smtplib
server = smtplib.SMTP('smtp.163.com', 25)
server.login('j_hao104@163.com', 'clientPassword')

此時(shí)便返回登錄成功提示:

(235, 'Authentication successful')

2、發(fā)送郵件

首先使用網(wǎng)上給出的代碼:

import smtplib
from email.mime.text import MIMEText
server = smtplib.SMTP('smtp.163.com', 25)
server.login('j_hao104@163.com', 'clientPassword')
msg = MIMEText('hello, send by Python...', 'plain', 'utf-8')
server.sendmail('j_hao104@163.com', ['946150454@qq.com'], msg.as_string())

構(gòu)造MIMEText對(duì)象時(shí),第一個(gè)參數(shù)是郵件正文,第二個(gè)參數(shù)是MIME的subtype,最后個(gè)是編碼方式。
sendmail是發(fā)郵件方法,第一個(gè)參數(shù)是發(fā)件郵箱,第二個(gè)參數(shù)是收件人郵箱,是一個(gè)列表,代表可以同時(shí)發(fā)給多個(gè)人,as_string是把MIMEText對(duì)象變成str。
但是執(zhí)行結(jié)果并不能得到網(wǎng)上說的結(jié)果:

2016627144839301.jpg (350×162)

而是:

Traceback (most recent call last):
 File "C:/python/t.py", line 195, in 
 server.sendmail('j_hao104@163.com', ['946150454@qq.com'], msg.as_string())
 File "C:Python27libsmtplib.py", line 746, in sendmail
 raise SMTPDataError(code, resp)
smtplib.SMTPDataError: (554, 'DT:SPM 163 smtp11,D8CowEDpDkE427JW_wQIAA--.4996S2 1454562105,please see http://mail.163.com/help/help_spam_16.htm?ip=171.221.144.51&hostid=smtp11&time=1454562105')

網(wǎng)上一查才知道:smtplib.SMTPDataError: (554, 'DT:SPM 163 smtp11……的錯(cuò)誤是因?yàn)樾欧獍l(fā)件人和信頭發(fā)件人不匹配。可以看出看出圖片中并沒有發(fā)件人和主題,所以需要對(duì)代碼做如下修改:

import smtplib
from email.header import Header
from email.mime.text import MIMEText
server = smtplib.SMTP('smtp.163.com', 25)
server.login('j_hao104@163.com', 'clientPassword')
msg = MIMEText('hello, send by Python...', 'plain', 'utf-8')
msg['From'] = 'j_hao104@163.com '
msg['Subject'] = Header(u'text', 'utf8').encode()
msg['To'] = u'飛輪海 '
server.sendmail('j_hao104@163.com', ['946150454@qq.com'], msg.as_string())

這樣就能成功發(fā)出郵件啦
msg里的具體信息可以用一般發(fā)郵件方式發(fā)封郵件測(cè)試下

2016627144903688.png (424×155)

3、參考示例

import smtplib
from email.mime.text import MIMEText

to_list = ['123@123.com', '456@456.com']
server_host = 'smtp.163.com'

username = '你的郵箱賬號(hào)'
password = '你的郵箱密碼'


def send(to_list, sub, content):
 '''
 :param to_list: 收件人郵箱
 :param sub: 郵件標(biāo)題
 :param content: 內(nèi)容
 '''
 me = "manager" + "<" + username + ">" 
 # _subtype 可以設(shè)為html,默認(rèn)是plain
 msg = MIMEText(content, _subtype='html')
 msg['Subject'] = sub
 msg['From'] = me
 msg['To'] = ';'.join(to_list)
 try:
 server = smtplib.SMTP()
 server.connect(server_host)
 server.login(username, password)
 server.sendmail(me, to_list, msg.as_string())
 server.close()
 except Exception as e:
 print str(e)

if __name__ == '__main__':
 send(to_list, "這個(gè)是一個(gè)郵件", "

Hello, It's test email.

")

聲明:本網(wǎng)頁內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問題請(qǐng)及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文檔

Python使用smtplib模塊發(fā)送電子郵件的流程詳解

Python使用smtplib模塊發(fā)送電子郵件的流程詳解:1、登錄SMTP服務(wù)器 首先使用網(wǎng)上的方法(這里使用163郵箱,smtp.163.com是smtp服務(wù)器地址,25為端口號(hào)): import smtplib server = smtplib.SMTP('smtp.163.com', 25) server.login('j_hao104@163.com', 'passw
推薦度:
標(biāo)簽: 郵件 電子郵件 SMTP
  • 熱門焦點(diǎn)

最新推薦

猜你喜歡

熱門推薦

專題
Top
主站蜘蛛池模板: 国产在线观看中文字幕 | 99精品国产高清一区二区三区香蕉 | 另类专区另类专区亚洲 | 在线观看色| 91精品国产综合久 | 国产日产精品_国产精品毛片 | xxx色| 日韩欧美一区二区三区在线播放 | 中文字幕第13亚洲另类 | 国产日韩欧美综合 | 亚洲欧洲国产成人综合一本 | 国产精品永久免费自在线观看 | 日韩a无v码在线播放免费 | 国内久久 | 欧美日本免费一区二区三区 | 国产一区二区日韩欧美在线 | 久久久久免费精品国产小说 | 热综合一本伊人久久精品 | 九九福利 | 欧美 亚洲 中文字幕 | 精品久久久久中文字幕日本 | 国产一区二区三区欧美 | 亚洲欧美日韩视频一区 | 天堂va欧美ⅴa亚洲va一国产 | 国产h片在线观看 | 一区在线观看 | 99久久国产亚洲综合精品 | 日韩成人免费在线视频 | 国产精品三级一区二区 | 亚洲一区二区免费 | 日本欧美一区二区三区不卡视频 | 欧美日韩网址 | 一卡二卡在线 | 亚洲一二三区在线观看 | 欧美日韩专区 | 国产精品久久久久久久久久久久 | 欧美日韩综合 | 亚洲精品一二区 | 日韩成人免费在线 | 另类激情亚洲 | 一卡二卡在线 |