如何使用Python傳送郵件

2021-08-14 05:51:48 字數 2736 閱讀 2826

**一和**二均為簡單的郵件傳送功能,但更推薦使用**一!!!

**一:

# -*- conding:utf-8 -*-

# 功能: 傳送簡單的文字郵件

# 注意: 確保該**可用請先到傳送者郵箱後台開啟 smtp 登入功能,並獲得第3方登入密碼

# 注意: 使用163郵件伺服器時,可用 smtp()方法,25埠進行登入

import smtplib # 匯入 smtplib 郵件處理庫

from email.mime.text import mimetext

from email.utils import formataddr

mail_server = "smtp.163.com" # 發件人的 smtp 伺服器

port = "25" # 服務埠

sender = "********@163.com" # 發件人郵箱帳號

sender_passw = "********" # 發件人郵箱密碼(第3方登入授權密碼)

receiver = "**********@qq.com" # 收件人郵箱帳號

msg = mimetext(mail_msg, "plain", "utf-8") # 郵件內容(正文) 需要傳送html檔案時,plain 改為 html 即可!

msg['from'] = formataddr(["發件人郵箱暱稱", sender]) # 發件人資訊

msg['to'] = formataddr(["收件人郵箱暱稱", receiver]) # 收件人資訊

msg['subject'] = "郵件的主題" # 郵件的主題

def sendmail(mail_server, port, sender,sender_passw, receiver):

try:

mail = smtplib.smtp(mail_server, port) # 使用smtp()方法指向伺服器(使用qq郵箱伺服器時,需改用 smtp_ssl()方法)

mail.login(sender, sender_passw) # 請求伺服器,登入帳號

mail.sendmail(sender, [receiver], msg.as_string() ) # 傳送郵件(給receiver傳入列表時,表示**)

mail.quit() # 斷開連線

print("郵件傳送成功!")

except:

mail.quit()

print("郵件傳送失敗!")

sendmail(mail_server, port, sender, sender_passw, receiver)

**二:

# -*- conding:utf-8 -*-

# 功能: 傳送簡單的文字郵件

# 注意: 確保該**可用請先到傳送者郵箱後台開啟 smtp 登入功能,並獲得第3方登入密碼

# 注意: 使用163郵件伺服器時,可用 smtp()方法,25埠進行登入

import smtplib # 匯入 smtplib 郵件處理庫

from email.mime.text import mimetext

from email.header import header

mail_server = "smtp.qq.com" # 發件人的 smtp 伺服器

port = "465" # 服務埠

sender = "**********qq.com" # 發件人郵箱帳號

sender_passw = "***********" # 發件人郵箱密碼(第3方登入授權密碼,非qq密碼)

receiver = "**********@qq.com" # 收件人郵箱帳號

msg = mimetext("這是郵件的正文!", "plain", "utf-8") # 郵件內容(正文)

msg['from'] = header("發件人郵箱暱稱", "utf-8") # 發件人資訊

msg['to'] = header("收件人郵箱暱稱", "utf-8") # 收件人資訊

msg['subject'] = "郵件的主題(new!!)" # 郵件的主題

def sendmail(mail_server, port, sender,sender_passw, receiver):

try:

mail = smtplib.smtp_ssl(mail_server, port) # 使用smtp()方法指向伺服器(使用qq郵箱伺服器時,需改用 smtp_ssl()方法)

print(mail.login(sender, sender_passw) ) # 請求伺服器,登入帳號

mail.sendmail(sender, receiver, msg.as_string() ) # 傳送郵件

mail.quit() # 斷開連線

print("郵件傳送成功!")

except:

mail.quit()

print("郵件傳送失敗!")

sendmail(mail_server, port, sender, sender_passw, receiver)

使用python傳送郵件

傳送郵件這個功能非常實用,比如你寫了乙個爬蟲,可以通過郵件來接收程式異常或者任務完成的通知,再比如你搭了乙個 別人只需留下他的郵箱,你就可以自動給他傳送郵件。總之我覺得郵件通知非常適合那些處理批量 大量任務,你可以不用守在電腦前等待處理結果,在程式裡配置好郵件通知後,只需留意郵箱通知就好了。在 py...

使用Python傳送郵件

import smtplib from email.mime.text import mimetext from email.mime.image import mimeimage from email.mime.multipart import mimemultipart 多 處理模組 from ...

python之如何傳送郵件

今天來講一下python如何傳送郵件,以163和qq郵箱為例。要想實現使用python 傳送郵件,郵箱必須開啟pop3 smtp協議,開啟之後郵箱會給你生成乙個授權碼 注意 這個授權碼一定要記住,以後使用 實現傳送郵件登陸的時候,使用的都是這個授權碼 qq郵箱的pop3 smtp協議開啟在 設定 賬...