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

Python基于SMTP發(fā)送郵件的方法

 更新時間:2021年03月24日 16:20:44   作者:honeymoose  
這篇文章主要介紹了Python基于SMTP 發(fā)送郵件的方法,幫助大家更好的理解和學(xué)習(xí)使用python,感興趣的朋友可以了解下

在很多時候,使用 Python 發(fā)送郵件可能沒有辦法使用郵件服務(wù)器提供的 API,因為不是所有的郵件服務(wù)商都會提供 API 供客戶使用的。

通常使用郵件 API 的郵件發(fā)送服務(wù)都需要額外的收費。

因此我們再郵件測試發(fā)送的時候,可能需要的是 SMTP 郵件發(fā)送服務(wù),通常這個服務(wù)是所有郵件服務(wù)商都會提供的。

要使用 SMTP 郵件發(fā)送服務(wù),你需要有下面的信息才可以完成和測試:

  • SMTP 郵件服務(wù)器的地址,端口,登錄用戶名和登錄用戶密碼
  • 發(fā)送和接收郵件的地址
  • 郵件的主題和正文

看起來是不是有點復(fù)雜,實際上,Python 提供了一個sendmail 的方法,這個方法在 smtplib 庫中。

簡單來說按照下面的步驟來做就可以了。

構(gòu)建消息對象

在 Python 中有一個庫為 MIMEMultipart,我們可以使用這個來構(gòu)建消息對象。

要做的事情也比較簡單,在定義 MIMEMultipart 對象后,你需要在這個對象中設(shè)置是誰發(fā)送的,發(fā)送給誰,主題是什么。

然后再在這個對象中插入正文,你可以插入 HTML 也可以插入純文本。

為了讓郵件比較美觀,通常我們都會插入 HTML 的文本,很多時候為了插入更多的數(shù)據(jù),我們還可能會用到模板。

發(fā)送郵件

在定義完成消息對象后,我們就可以發(fā)送郵件了。

在發(fā)送郵件之前,我們需要初始化 SMTP 對象,通常使用的是 smtplib.SMTP(smtpserver) 方法。

在這個方法中,我們會定義發(fā)送郵件服務(wù)器的地址和端口。

隨后我們可能會調(diào)用一個 starttls 方法,這個方法是希望發(fā)送郵件服務(wù)器使用的是 TLS 模式。

隨著技術(shù)的進步,和安全的考慮,很多郵件發(fā)送服務(wù)器都要求使用 TLS 模式來進行發(fā)送。

然后使用 server.login(email_user, email_passwd) 方法來登錄服務(wù)器。

在上面的步驟完成后,我們就等于完成了你的 Python 代碼和郵件服務(wù)器的通信了,你的代碼在這個時候會拿到服務(wù)器的對象了,并且完成了對象的初始化了。

在這一步完成后就可以調(diào)用 sendmail 函數(shù)發(fā)送郵件。

當(dāng)郵件發(fā)送完成后,不要忘記關(guān)閉郵件服務(wù)器的連接。

 # Connect to the SMTP server
 server = smtplib.SMTP(smtpserver)
 server.starttls()
 server.login(email_user, email_passwd)
 sending_response = server.sendmail(from_addr, to_addr, message.as_string())
 print(sending_response)
 server.quit()

針對上面的發(fā)送服務(wù),請參考下上面提供的偽代碼。

完整的測試代碼請參考 GitHub 上面的:python-tutorials/SendMailSMTP.py at master · cwiki-us-docs/python-tutorials · GitHub

要點

Python 發(fā)送郵件的服務(wù)還是比較簡單的。

因為郵件發(fā)送服務(wù)都需要和第三方的郵件服務(wù)器進行通信,在這個通信的過程中,最重要的步驟就是先要獲得郵件服務(wù)器的鏈接。

通常這個鏈接因為有防火墻,發(fā)送用戶名限制,密碼要求等等可能會導(dǎo)致連接獲得失敗而沒有辦法拿到連接服務(wù)器的對象。

針對遇到的情況具體問題具體分析就可以了。

遵循的原則步驟就是:

  1. 構(gòu)建消息
  2. 獲得服務(wù)器連接
  3. 發(fā)送郵件
  4. 關(guān)閉服務(wù)器連接

需要注意的是不要忘記關(guān)閉服務(wù)器連接。

以上就是Python基于SMTP 發(fā)送郵件的方法的詳細內(nèi)容,更多關(guān)于Python SMTP 發(fā)送郵件的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • Python爬蟲網(wǎng)頁元素定位術(shù)

    Python爬蟲網(wǎng)頁元素定位術(shù)

    這篇文章主要介紹了Python爬蟲網(wǎng)頁元素定位術(shù),文章通過Beautiful?Soup模塊展開詳細的內(nèi)容介紹,具有一定的參考價值,需要的小伙伴可以參考一下
    2022-05-05
  • 在Mac OS系統(tǒng)上安裝Python的Pillow庫的教程

    在Mac OS系統(tǒng)上安裝Python的Pillow庫的教程

    這篇文章主要介紹了在MacOS下安裝Python的Pillow庫的教程,Pillow庫用來對圖片進行各種處理操作,需要的朋友可以參考下
    2015-11-11
  • python代碼實現(xiàn)猜拳小游戲

    python代碼實現(xiàn)猜拳小游戲

    這篇文章主要為大家詳細介紹了python代碼實現(xiàn)猜拳小游戲,以文本文件存儲與調(diào)用信息,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-11-11
  • Python實現(xiàn)修改阿里云DNS域名解析

    Python實現(xiàn)修改阿里云DNS域名解析

    當(dāng)公網(wǎng)IP是浮動的時候,用一個域名去實時解析,才不會那么糟糕,本文將介紹如何使用python修改阿里云dns域名解析,感興趣的小伙伴可以了解一下
    2024-11-11
  • 詳解python開發(fā)環(huán)境搭建

    詳解python開發(fā)環(huán)境搭建

    這篇文章主要介紹了詳解python開發(fā)環(huán)境搭建 ,記錄一下過程,方便自己以后配置,也方便正在學(xué)習(xí)中的同事配置他們的環(huán)境。
    2016-12-12
  • Python接口自動化淺析數(shù)據(jù)驅(qū)動原理

    Python接口自動化淺析數(shù)據(jù)驅(qū)動原理

    這篇文章主要介紹了Python接口自動化淺析數(shù)據(jù)驅(qū)動原理,文中會詳細描述怎樣使用openpyxl模塊操作excel及結(jié)合ddt來實現(xiàn)數(shù)據(jù)驅(qū)動,有需要的朋友可以參考下
    2021-08-08
  • 基于Python實現(xiàn)個人手機定位分析

    基于Python實現(xiàn)個人手機定位分析

    TransBigData是一個為交通時空大數(shù)據(jù)處理、分析和可視化而開發(fā)的Python包。本文就來用它實現(xiàn)個人手機定位分析,感興趣的小伙伴可以了解一下
    2023-04-04
  • Python實現(xiàn)發(fā)送聲情并茂的郵件內(nèi)容和附件

    Python實現(xiàn)發(fā)送聲情并茂的郵件內(nèi)容和附件

    Python是一種高級編程語言,它可以用于編寫各種類型的應(yīng)用程序,包括發(fā)送電子郵件。本文就來演示如何使用Python發(fā)送HTML格式的電子郵件,感興趣的可以了解一下
    2023-04-04
  • python實現(xiàn)創(chuàng)建新列表和新字典,并使元素及鍵值對全部變成小寫

    python實現(xiàn)創(chuàng)建新列表和新字典,并使元素及鍵值對全部變成小寫

    今天小編就為大家分享一篇python實現(xiàn)創(chuàng)建新列表和新字典,并使元素及鍵值對全部變成小寫,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-01-01
  • python實現(xiàn)實時視頻流播放代碼實例

    python實現(xiàn)實時視頻流播放代碼實例

    這篇文章主要介紹了python實現(xiàn)實時視頻流播放代碼實例,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-01-01

最新評論

石楼县| 驻马店市| 灵丘县| 兖州市| 开平市| 本溪| 明光市| 油尖旺区| 河曲县| 万州区| 庐江县| 商南县| 丰顺县| 开江县| 泾源县| 德令哈市| 宝丰县| 惠来县| 仙桃市| 阳西县| 平南县| 保康县| 杨浦区| 古交市| 乌海市| 云霄县| 高雄县| 盖州市| 京山县| 东海县| 天全县| 乡城县| 五原县| 普宁市| 清水县| 高台县| 宣恩县| 丰台区| 石首市| 博兴县| 南木林县|