Python 3はメール送信を実現
11477 ワード
1、簡単な紹介
日常の仕事では、定例化されたタスクに遭遇したり、健康状態を監視したりする必要があります.この場合、自動的にメールを送る方法を選択することができます.ちょうど最近使っているので、まとめてみます.
2、python 3実装
学习を総括して、问题あるいは不当なところがあって、批判して指摘することができて、ありがとうございます.
日常の仕事では、定例化されたタスクに遭遇したり、健康状態を監視したりする必要があります.この場合、自動的にメールを送る方法を選択することができます.ちょうど最近使っているので、まとめてみます.
2、python 3実装
# =============================================================
# !/usr/bin/python
# -*- coding=utf-8 -*-
# Name: email
# Description: Python3
# Author:
# Date: 2020/4/18
# Mail:
# =============================================================
import smtplib
from email.utils import formatdate
from email.header import Header
from email.mime.base import MIMEBase
from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipart
username = "user_name" #
from_addr = username + "@foxmail.com" #
password = "12345678" #
smtp_addr = "xx.xx.com" #
# , , list( Python2 )
to_addrs = ['[email protected]', '[email protected]', '[email protected]']
def message_template1(): # - 1
# -------------------- --------------------------
mail_msg = """
Python ...
"""
message = MIMEText(mail_msg, 'html', 'utf-8')
message['Subject'] = Header('Python SMTP ', 'utf-8') #
message['From'] = Header(username, 'utf-8') # ,
message['To'] = Header('; '.join(to_addrs), 'utf-8') # ,
message['Date'] = formatdate(localtime=True)
return message
def message_template2(): # - 2
# -------------------- --------------------------
mail_msg = """
Python ...
"""
message = MIMEMultipart('alternative')
text_html = MIMEText(mail_msg, 'html', 'utf-8')
message['To'] = ';'.join(to_addrs)
message['Date'] = formatdate(localtime=True)
message['Subject'] = 'Python SMTP '
message.add_header('reply-to', from_addr) # ,
message.add_header('from', username + " + from_addr + ">") #
message.attach(text_html)
return message
def send_email_():
message = message_template1()
message = message_template2()
try:
smtpObj = smtplib.SMTP()
smtpObj.connect(host=smtp_addr)
smtpObj.login(username, password)
smtpObj.sendmail(from_addr, to_addrs, message.as_string())
smtpObj.quit()
print(" ")
except smtplib.SMTPException as e:
print(repr(e))
print("Error: ")
if __name__ == '__main__':
send_email_()
学习を総括して、问题あるいは不当なところがあって、批判して指摘することができて、ありがとうございます.