用Python來編寫自動化是一種挺有趣的事情,上次提過經過定位元素、切換窗口等自動登陸博客園,今天給你們講講用Python來自動發送郵件html
首先呢,先導入email框架,具體以下web
import smtplib
from email.mime.text import MIMEText
from email.utils import formataddr
from email.mime.base import MIMEBase
from email import encoders
from email.mime.multipart import MIMEMultipart框架
其次,登陸郵箱來肯定SMIP、POP3口令,這個下面要用到ui
接下來呢,你要準備好本身的帳號密碼以及收件人的郵箱帳號,以及要發送的郵件編碼
最後就是根據基本的框架結構,對着數據進行輸入code
具體操做以下:orm
import smtplib
from email.mime.text import MIMEText
from email.utils import formataddr
from email.mime.base import MIMEBase
from email import encoders
from email.mime.multipart import MIMEMultipart
SMIP=" "
POP3=" "
# 發件人郵箱帳號
my_sender=" "
# 發件人郵箱密碼
my_pass=POP3
# 收件人郵箱帳號
my_user=" "
def mail():
ret=True
try:
# 實例化添加郵件附件對象
msg=MIMEMultipart()
# 括號裏的對應發件人郵箱暱稱、發件人郵箱帳號
msg["from"]=formataddr([" 發件人郵箱暱稱",my_sender])
# 括號裏的對應收件人郵箱暱稱、收件人郵箱帳號
msg["to"]=formataddr(["收件人郵箱暱稱",my_user])
# 郵件的主題,也能夠說是標題
msg["subject"]="自動化郵件"
# MIMEText(郵件正文描述, 郵件類型, 編碼)
msg.attach(MIMEText('今天的自動化報告', 'html', 'utf-8'))
# 添加郵件
with open("D:\oy.test\自動化\\web_test.html","rb")as a:
# 設置附件的MIME和文件名
mime=MIMEBase("image","html",filename="web_test.html")
# 添加協議的頭部信息
mime.add_header("Content-Disposition","attachment",filename="web_test.html")
mime.add_header("Content-ID","<0>")
mime.add_header("X-Attachment-id","0")
# 讀取附件內容
mime.set_payload(a.read())
# 用Base64編碼
encoders.encode_base64(mime)
# 添加到MIMEMultipart
msg.attach(mime)
server = smtplib.SMTP_SSL("smtp.qq.com", 465)
# 發件人帳號,密碼
server.login(my_sender, my_pass)
# 括號中對應的是發件人郵箱帳號、收件人郵箱帳號、發送郵件
server.sendmail(my_sender, [my_user], msg.as_string())
server.quit()
except Exception as e:
print(e)
ret = False
return ret
if __name__ == "__main__":
ret = mail()
if ret:
print("發送成功")
else:
print("發送失敗")server