工资条: EmailSender部分

EmailSender.py

Shawn
11/27/2018

用于发送email.

发送email最容易出错的不是程序,而是搞定发送的email邮箱.

发送email的更多知识见: http://www.runoob.com/python3/python3-smtp.html

软件本体见 https://blog.csdn.net/weixin_41084236/article/details/84325652


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


class EmailSender:
    my_sender = ''  # 发件人邮箱账号
    my_pass = ''  # 发件人邮箱密码
    sender_name = ''  # 发件人邮箱名称

    def __init__(self, sender, pas, name):
        self.my_sender = sender
        self.my_pass = pas
        self.sender_name = name

    def send_mail(self, address, content, to_name, title):
        ret = True
        try:
            msg = MIMEText(content, 'html', 'utf-8')
            msg['From'] = formataddr([self.sender_name, self.my_sender])  # 括号里的对应发件人邮箱昵称、发件人邮箱账号
            msg['To'] = formataddr([to_name, address])  # 括号里的对应收件人邮箱昵称、收件人邮箱账号
            msg['Subject'] = title  # 邮件的主题,也可以说是标题

            server = smtplib.SMTP_SSL("smtp.qq.com", 465)  # 发件人邮箱中的SMTP服务器,端口是25
            server.login(self.my_sender, self.my_pass)  # 括号中对应的是发件人邮箱账号、邮箱密码
            server.sendmail(self.my_sender, [address, ], msg.as_string())  # 括号中对应的是发件人邮箱账号、收件人邮箱账号、发送邮件
            server.quit()  # 关闭连接
        except Exception:  # 如果 try 中的语句没有执行,则会执行下面的 ret=False
            ret = False
        return ret
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值