前不久學習了一下python是如何傳送郵件到指定郵箱,python使用版本為python3.7。
# !
/usr/bin/python3
#匯入smtplib包,引用對應外掛程式
import smtplib
from email.mime.text import mimetext
from email.utils import formataddr
class
email()
: def to_send
(self, msg, msender, mpass, mreceiver=
):""" 引數講解
:param msg: 郵件正文
:param msender: 傳送者郵箱
:param mpass: 傳送者伺服器授權碼
:param mreceiver: 接收者(多個)
:return
: 返回狀態 true 傳送成功 false 傳送失敗
"""result = true
try: # 對需要傳送的訊息進行編碼
mcontent =
mimetext
(msg,
'html'
,'utf-8'
) # formataddr中分別是傳送人的暱稱和傳送郵箱
mcontent[
'from']=
formataddr([
"sender'name"
, msender]
) # 括號裡分別是收件人郵箱暱稱、收件人郵箱賬號
(由於本例子是做的乙個多接收者示例,因此增加了乙個迴圈去新增接收人資訊)
for tmp in mreceiver:
mcontent[
'to']=
formataddr([
"checker"
, tmp]
) # 郵件的主題
mcontent[
'subject']=
"daily check test"
# 建立服務,括號中分別是發件人郵箱中的smtp伺服器位址、埠號,下訴例子中使用的是qq的smtp伺服器
server = smtplib.
smtp_ssl
("smtp.qq.com"
,465
) # 括號中分別是發件人郵箱賬號、授權碼(開啟qq郵箱smtp服務後,會得到該授權碼)
server.
login
(msender, mpass)
# 括號中對應的是發件人郵箱賬號、收件人郵箱賬號、郵件內容
server.
sendmail
(msender, mreceiver, mcontent.
as_string()
) # 關閉連線
server.
quit()
# 丟擲郵件傳送過程中的異常訊息
except exception as err:
result = false
print
(err)
return result
# 新增乙個主函式進行示例呼叫
if __name__ ==
'__main__'
: s =
email()
receiver =
["接收郵箱1"
,"接收郵箱2"
,...
] res = s.
to_send
("郵件正文"
,"傳送郵箱"
,"服務授權碼"
, receiver)
if res:
print
("send success!!!"
)else
:print
("send error!!!"
)
記錄完畢!!!好好學習,天天向上!!! 關於python3 傳送郵件
from email.mime.text import mimetext from email.header import header from smtplib import smtp ssl qq伺服器 host server smtp.qq.com sender qq為發件人的qq號碼 sen...
使用python 3實現傳送郵件功能
import smtplib from email.mime.text import mimetext smtpsever smtp.163.com 郵箱伺服器 sender 163.com 郵件位址 password whl3386087 密碼 receivers qq.com 程式設計客棧con...
Python3實現傳送郵件和傳送簡訊驗證碼功能
python3實現傳送郵件 import smtplib from email.mime.text import mimetext from email.utils import formataddr my sender 1434399884 qq.com 發件人郵箱賬號 my pass 發件人郵箱...