最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python實現(xiàn)SMTP發(fā)送郵件詳細(xì)教程

 更新時間:2021年03月02日 10:07:01   作者:python~小成錄  
這篇文章主要為大家詳細(xì)介紹了Python實現(xiàn)SMTP發(fā)送郵件詳細(xì)教程,附SMTP郵件發(fā)送代碼,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下

簡介

Python發(fā)送郵件的教程本人在網(wǎng)站搜索的時候搜索出來了一大堆,但是都是說了一大堆原理然后就推出了實現(xiàn)代碼,我測試用給出的代碼進(jìn)行發(fā)送郵件時都不成功,后面找了很久才找到原因,這都是沒有一個詳細(xì)的環(huán)境調(diào)試導(dǎo)致,所以今天特出一個詳細(xì)的教程,一步一步從環(huán)境調(diào)試到代碼實現(xiàn)整一個教程,希望對還在苦苦尋找解決方法卻遲遲不能得到有效解決的人員一點幫助。

SMTP協(xié)議

首先了解SMTP(簡單郵件傳輸協(xié)議),郵件傳送代理程序使用SMTP協(xié)議來發(fā)送電郵到接收者的郵件服務(wù)器。SMTP協(xié)議只能用來發(fā)送郵件,不能用來接收郵件,而大多數(shù)的郵件發(fā)送服務(wù)器都是使用SMTP協(xié)議。SMTP協(xié)議的默認(rèn)TCP端口號是25。

環(huán)境調(diào)試

上面說了是使用SMTP協(xié)議發(fā)送的郵件,所以需要先查看您的發(fā)件人郵箱是否有開啟SMTP協(xié)議,如沒有需要開啟,我測試使用的是163.com的郵箱作為發(fā)信人郵箱,開啟SMTP協(xié)議如下圖所示。

1.先登錄到163.com郵箱中(網(wǎng)易郵箱),如下圖

2.看到郵箱上面的功能欄中有一個“設(shè)置”的選項,單擊該選項,然后選擇下拉菜單的“POP3/SMTP/IMAP”

3.如下圖所示,上面紅框的兩個必須勾選上,如沒有勾選,要選擇開啟就可以勾選上了,然后可以看到下面紅框里是SMTP服務(wù)器:smtp.163.com

實現(xiàn)代碼

經(jīng)過上面的設(shè)置后就將環(huán)境調(diào)試好了,下面就可以實現(xiàn)代碼了,推薦使用pycharm4.5.3編輯器來編寫代碼,下面的代碼在python2.7和python3.4版本測試都可使用。

#coding:utf-8 #強(qiáng)制使用utf-8編碼格式
import smtplib #加載smtplib模塊
from email.mime.text import MIMEText
from email.utils import formataddr
my_sender='發(fā)件人郵箱賬號' #發(fā)件人郵箱賬號,為了后面易于維護(hù),所以寫成了變量
my_user='收件人郵箱賬號' #收件人郵箱賬號,為了后面易于維護(hù),所以寫成了變量
def mail():
 ret=True
 try:
 msg=MIMEText('填寫郵件內(nèi)容','plain','utf-8')
 msg['From']=formataddr(["發(fā)件人郵箱昵稱",my_sender]) #括號里的對應(yīng)發(fā)件人郵箱昵稱、發(fā)件人郵箱賬號
 msg['To']=formataddr(["收件人郵箱昵稱",my_user]) #括號里的對應(yīng)收件人郵箱昵稱、收件人郵箱賬號
 msg['Subject']="主題" #郵件的主題,也可以說是標(biāo)題

 server=smtplib.SMTP("smtp.xxx.com",25) #發(fā)件人郵箱中的SMTP服務(wù)器,端口是25
 server.login(my_sender,"發(fā)件人郵箱密碼") #括號中對應(yīng)的是發(fā)件人郵箱賬號、郵箱密碼
 server.sendmail(my_sender,[my_user,],msg.as_string()) #括號中對應(yīng)的是發(fā)件人郵箱賬號、收件人郵箱賬號、發(fā)送郵件
 server.quit() #這句是關(guān)閉連接的意思
 except Exception: #如果try中的語句沒有執(zhí)行,則會執(zhí)行下面的ret=False
 ret=False
 return ret

ret=mail()
if ret:
 print("ok") #如果發(fā)送成功則會返回ok,稍等20秒左右就可以收到郵件
else:
 print("filed") #如果發(fā)送失敗則會返回filed

如果發(fā)送成功則會返回ok,否則為執(zhí)行不成功,如下圖:

開拓視野

雖然代碼可以用了,但是不免得有些人就愛瞎折騰,玩著玩著就把代碼玩壞了,所以這里附上幾個知識點以解你之疑惑。

1.看到上面代碼第一行的“#coding:utf-8”沒有,相信很多看這代碼的人都不怎么注意這一行,反正這和代碼實現(xiàn)又沒啥關(guān)系,保存時選擇utf-8格式就行了嘛;告訴你們哦這一行代碼在python中非常重要,最好寫每一頁都要加上強(qiáng)制字符編碼,因為python2版本它默認(rèn)識別ASCII編碼,所以當(dāng)中文字符出現(xiàn)在python中它是不認(rèn)的,出現(xiàn)的錯誤提示如下圖所示:

錯誤提示示例:File"F:/python/s12/pymail.py",line2

SyntaxError:Non-ASCIIcharacter'\xe5'infileF:/python/s12/pymail.pyonline2,butnoencodingdeclared;seehttp://www.python.org/peps/pep-0263.htmlfordetails

所以當(dāng)出現(xiàn)上面的編碼錯誤提示時,可以在頁面的第一行加上

#coding:utf-8 #強(qiáng)制編碼為utf-8

#coding:GBK #強(qiáng)制編碼為GBK

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • 基于python?win32setpixel?api?實現(xiàn)計算機(jī)圖形學(xué)相關(guān)操作(推薦)

    基于python?win32setpixel?api?實現(xiàn)計算機(jī)圖形學(xué)相關(guān)操作(推薦)

    這篇文章主要介紹了基于python?win32setpixel?api?實現(xiàn)計算機(jī)圖形學(xué)相關(guān)操作,這次的主要分為2個主要模塊,一個是實現(xiàn)畫線,畫圓的算法,還有填充的算法,以及裁剪的算法,需要的朋友可以參考下
    2021-12-12
  • python讀寫數(shù)據(jù)讀寫csv文件(pandas用法)

    python讀寫數(shù)據(jù)讀寫csv文件(pandas用法)

    這篇文章主要介紹了python讀寫數(shù)據(jù)讀寫csv文件(pandas用法),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-12-12
  • python 計算兩個日期相差多少個月實例代碼

    python 計算兩個日期相差多少個月實例代碼

    這篇文章主要介紹了python 計算兩個日期相差多少個月實例代碼,非常具有實用價值,需要的朋友可以參考下
    2017-05-05
  • python使用opencv進(jìn)行人臉識別

    python使用opencv進(jìn)行人臉識別

    本文主要介紹了python使用opencv進(jìn)行人臉識別的相關(guān)資料。具有很好的參考價值。下面跟著小編一起來看下吧
    2017-04-04
  • Python裝飾器原理與簡單用法實例分析

    Python裝飾器原理與簡單用法實例分析

    這篇文章主要介紹了Python裝飾器原理與簡單用法,結(jié)合實例形式分析了Python裝飾器的概念、原理、使用方法及相關(guān)注意事項,需要的朋友可以參考下
    2018-04-04
  • Python設(shè)計模式行為型觀察者模式

    Python設(shè)計模式行為型觀察者模式

    這篇文章主要介紹了Python設(shè)計模式行為型觀察者模式,觀察者模式即Publish?Subscribe?Pattern,定義了一種一對多的關(guān)系,讓多個觀察對象同時監(jiān)聽一個主題對象,當(dāng)主題對象狀態(tài)發(fā)生變化時會通知所有觀察者,是它們能夠自動更新自己,下面和小編一起進(jìn)入文章學(xué)習(xí)詳細(xì)內(nèi)容吧
    2022-02-02
  • Python+folium繪制精美地圖的示例詳解

    Python+folium繪制精美地圖的示例詳解

    folium是一個基于leaflet.js的python地圖庫,可以通過folium來操縱數(shù)據(jù),并將其可視化。本文將通過各種示例詳細(xì)講解如何利用folium繪制精美地圖,需要的可以參考一下
    2022-03-03
  • 使用python list 查找所有匹配元素的位置實例

    使用python list 查找所有匹配元素的位置實例

    今天小編就為大家分享一篇使用python list 查找所有匹配元素的位置實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-06-06
  • python numpy數(shù)組復(fù)制使用實例解析

    python numpy數(shù)組復(fù)制使用實例解析

    這篇文章主要介紹了python numpy數(shù)組復(fù)制使用實例解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-01-01
  • Django框架中render_to_response()函數(shù)的使用方法

    Django框架中render_to_response()函數(shù)的使用方法

    這篇文章主要介紹了Django框架中render_to_response()函數(shù)的使用方法,注意范例中該方法的參數(shù)的使用,需要的朋友可以參考下
    2015-07-07

最新評論

博罗县| 宜黄县| 秦安县| 玉屏| 利津县| 油尖旺区| 广平县| 新密市| 衡东县| 防城港市| 娄烦县| 三明市| 右玉县| 平邑县| 泽库县| 沈丘县| 宜州市| 湟源县| 昌江| 鹤峰县| 恭城| 外汇| 花莲县| 亳州市| 萨迦县| 东莞市| 长阳| 德安县| 嵊泗县| 赫章县| 岳普湖县| 崇文区| 江津市| 衡水市| 长武县| 阿鲁科尔沁旗| 山西省| 黑龙江省| 盐山县| 石屏县| 金平|