python发送邮件

使用python发送邮件需要使用到smtplib模块(用于发送邮件)和email模块(用于邮件的配置)

使用步骤

1.发送邮件的配置包括邮件的主题,发件人的昵称和账号,收件人的昵称和账号

2.创建连接

3.发送邮件

4.关闭连接

import smtplib
from email.mime.text import MIMEText
from email.utils import formataddr

def mail(my_sender, my_passwd, to_user, my_nick, to_nick, mail_msg):
    """
    my_sender: 发件人的邮箱
    my_passwd: 发件人的密码,开启POP3/SMTP服务是系统生成的密码
    to_user: 收邮人邮箱
    my_nick: 发件人昵称,会在收件人邮箱显示
    to_nick: 收件人昵称
    mail_msg: 发送的信息
    """
    # 将邮件的内容做一次MIME转换
    msg = MIMEText(mail_msg, 'html', 'utf-8')
    # 配置昵称和邮箱账号
    msg['From'] = formataddr([my_nick, my_sender])
    msg['To'] = formataddr([to_nick, to_user])
    # 设置邮件的主题
    msg['Subject'] = "发送测试邮件"
    # 配合python与邮件的SMTP服务器的连接通道
    server = smtplib.SMTP_SSL("smtp.qq.com", 465)
    # 模拟登录
    server.login(my_sender, my_passwd)
    # 发送内容
    server.sendmail(my_sender, [to_user], msg.as_string())
    # 关闭连接通道
    server.quit()

if __name__ == "__main__":
    try:
        mail_msg = "<p>Python邮件测试</p>"
        mail("发件人账号", "mqldgjdojcrmbdgb", "收件人账号", "发件人昵称", "收件人昵称", mail_msg)
        print("发送成功")
    except Exception as e:
        print(e)
        print("发送失败")

 

posted @ 2019-07-07 23:24  xdl_smile  阅读(182)  评论(0编辑  收藏  举报