邮件
# smtplib 邮件的发信动作
import smtplib
# email 邮件内容
from email.mime.text import MIMEText
from email.header import Header
class SendEMail(object):
def __init__(self, send_config):
# 开启发信服务,SMTP_SSL 加密传输
self.server = smtplib.SMTP_SSL()
self.server.connect(send_config["smtp_server"], send_config["port"])
# 登录发信邮箱
self.from_email = send_config["from_email"]
self.server.login(self.from_email, send_config["password"])
def send_email(self, send_message, to_addr, send_title):
# 邮箱正文内容,第一个参数为内容,第二个参数为格式(plain 为纯文本),第三个参数为编码
msg = MIMEText(send_message, 'plain', 'utf-8')
# 邮件头信息
msg['From'] = Header(self.from_email)
msg['To'] = Header(to_addr)
msg['Subject'] = Header(send_title) # 发送邮件主题
# 发送邮件
self.server.sendmail(self.from_email, to_addr, msg.as_string())
# 关闭服务器
self.server.quit()
print("send mail success!")
if __name__ == '__main__':
send_config = {"from_email": '发件人@163.com', # 发送邮件
"password": '8fvDm9uiEzsGLkUB', # 百度设置邮箱授权码
"smtp_server": 'smtp.163.com', # 发信服务器
"port": 465 # 邮件端口
}
se = SendEMail(send_config)
send_title = 'mail head'
send_message = 'alarms' # 这里设置的是纯文本形式 plain
# 收信方邮箱
to_addr = '收件人@qq.com'
se.send_email(send_message, to_addr, send_title)