首頁 >後端開發 >Python教學 >Python 3.x 中如何使用smtplib模組發送郵件

Python 3.x 中如何使用smtplib模組發送郵件

PHPz
PHPz原創
2023-07-29 09:49:291279瀏覽

Python 3.x 中如何使用smtplib模組發送郵件

概述:
郵件是現代社會中重要的一種通訊方式,無論是個人還是企業,都需要透過電子郵件來進行訊息的傳遞和溝通。在Python中,我們可以使用smtplib模組來方便地發送郵件。本文將介紹如何在Python 3.x 中使用smtplib模組來傳送郵件,並給予對應的程式碼範例。

步驟一:導入smtplib模組和相關依賴模組

#首先,我們需要導入smtplib模組以及其他相關的依賴模組。在Python中使用smtplib發送郵件需要依賴以下模組:

import smtplib
from email.mime.text import MIMEText
from email.header import Header

步驟二:連接SMTP伺服器並登入

接下來,我們需要連接SMTP伺服器並登入。 SMTP(Simple Mail Transfer Protocol)是用來傳送郵件的協定。在使用smtplib發送郵件時,我們需要指定SMTP伺服器的位址和端口,並且根據情況是否需要進行身份驗證。

郵件提供者通常會提供SMTP伺服器的位址和連接埠以及對應的帳號和密碼。以QQ信箱為例,SMTP伺服器位址為smtp.qq.com,連接埠為465或587,需進行驗證。

smtp_server = 'smtp.qq.com'
smtp_port = 465
sender = 'your-email@qq.com'
password = 'your-email-password'

smtp_obj = smtplib.SMTP_SSL(smtp_server, smtp_port) # 建立SMTP對象,並使用SSL連接SMTP伺服器
smtp_obj.login(sender, password) # 登入SMTP伺服器

步驟三:設定郵件內容和標題

在發送郵件之前,我們需要設定郵件的內容和標題。使用email.mime.text模組的MIMEText類別可以方便地建立包含文字內容的郵件。

msg = MIMEText('郵件內容', 'plain', 'utf-8') # 建立一個MIMEText對象,第一個參數為郵件內容,第二個參數為內容類型,第三個參數為字元編碼
msg['From'] = Header('寄件者', 'utf-8') # 設定寄件者
msg['To'] = Header('收件者' , 'utf-8') # 設定收件者
msg['Subject'] = Header('郵件標題', 'utf-8') # 設定郵件標題

步驟四:傳送郵件

設定好郵件的內容和標題之後,我們就可以發送郵件了。使用SMTP物件的sendmail方法可以將郵件傳送出去。

receiver = 'receiver-email@example.com' # 收件者信箱位址
smtp_obj.sendmail(sender, receiver, msg.as_string()) # 傳送郵件

步驟五:關閉SMTP連線

在發送完郵件之後,為了釋放資源,我們需要關閉SMTP連線。

smtp_obj.quit() # 關閉SMTP連線

完整範例程式碼如下:

import smtplib
from email.mime.text import MIMEText
from email .header import Header

smtp_server = 'smtp.qq.com'
smtp_port = 465
sender = 'your-email@qq.com'
password = 'your-email-password '

smtp_obj = smtplib.SMTP_SSL(smtp_server, smtp_port)
smtp_obj.login(sender, password)

msg = MIMEText('郵件內容', 'plain', 'utf-
##msg = MIMEText('郵件內容', 'plain', 'utf-

msg = MIMEText('郵件內容', 'plain', 'utf-

msg = MIMEText('郵件內容', 'plain', 'utf-

msg = MIMEText('郵件內容', 'plain', 'utf-

msg = MIMEText('郵件內容', 'plain', 'utf-


msg = MIMEText('郵件內容', 'plain', 'utf-

###msg = MIMEText('郵件內容', 'plain', 'utf-######msg = MIMEText('郵件內容', 'plain', 'utf-' 8')###msg['From'] = Header('寄件者', 'utf-8')###msg['To'] = Header('收件者', 'utf-8' )###msg['Subject'] = Header('郵件標題', 'utf-8')######receiver = 'receiver-email@example.com'###smtp_obj.sendmail(sender, receiver, msg.as_string())######smtp_obj.quit()######結語:###使用Python的smtplib模組傳送郵件非常簡單,只需幾行程式碼即可完成。上述範例程式碼中的郵件內容、標題和收件者等資訊需要根據實際情況進行修改。希望本文能幫助大家學習如何在Python 3.x 中使用smtplib模組發送郵件。 ###

以上是Python 3.x 中如何使用smtplib模組發送郵件的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn