python3 smtp 自动发送邮件

import smtplib
from email.header import Header
from email.mime.text import MIMEText
from email.utils import parseaddr, formataddr
from settings import email_setting


host = email_setting.get('host') # SMTP服务器
port = email_setting.get('port') # 端口
username = email_setting.get('user') # 授权账户
password = email_setting.get('password') # 授权密码

sender_name = '朝阳群众'  # 发件人名称
sender_addr = '***@163.com'  # 发件人邮箱
receiver_name = '老李'  # 收件人名称
receiver_addr = '***@gmail.com'  # 收件人邮箱

subject = '温馨提示'
content = '''
            <p>亲爱的老李同志,你被隔壁老王给绿了</p>
        '''

sender = formataddr((Header(sender_name, 'utf-8').encode(), sender_addr))
receiver = formataddr((Header(receiver_name, 'utf-8').encode(), receiver_addr))

msg = MIMEText(content, 'html', 'utf-8')

msg['From'] = sender
msg['To'] = receiver
msg['Subject'] = subject

try:
    server = smtplib.SMTP(host, port)
    server.login(username, password) # 登录smtp服务器
    server.sendmail(sender, receiver_addr, msg.as_string()) # 发送邮件
except:
    print('邮件发送错误')
finally:
    server.close()

代码很简单, 应该不会有哪儿看不懂的吧

猜你喜欢

转载自www.cnblogs.com/ifengqi/p/9789469.html