Python实现邮件发送

发送邮件其实很简单,主要用了smtplib和email库。
要注意的是这个varifycode其实是邮箱的授权码,QQ邮箱的授权码是在邮箱设置-账号里开启IMAP后提供给你的一个固定字符串有点像uuid,163邮箱类似,不同的点在于163邮箱的授权码可以自己设定。
这份实现是我将发送邮件功能封装了个类,通过传入发送邮件的账户、账户名、授权码、接收邮件的用户名、主机地址、端口、主题和发送的内容,实现发送。可以调用result()函数获取发送结果,判断是否发送成功,失败的话错误是什么。

#/usr/bin/python
# -*- coding:utf-8 -*-

import smtplib
from email.mime.text import MIMEText
from email.header import Header

class SendMail:
    errCode = ""

    def __init__(self, accout, name, varifycode, reciever, host, port, maintitle, sendmessage):
        self.accout = accout;
        self.varifycode = varifycode;
        self.reciever = reciever;
        self.host = host;
        self.port = port;
        self.maintitle = maintitle;
        self.build(sendmessage, name, maintitle)

    def build(self, message, name, maintitle):
        message = MIMEText(message, 'plain', 'utf-8')
        message['From'] = Header(name + "<" + self.accout + ">", 'utf-8')
        message['To'] = Header("<" + self.reciever + ">", 'utf-8')
        subject = maintitle
        message['Subject'] = Header(subject, 'utf-8')
        self.sendmessage = message;

    def send(self):
        try:
            smtpObj = smtplib.SMTP_SSL(self.host, self.port)
            smtpObj.login(self.accout, self.varifycode)
            smtpObj.sendmail(self.accout, self.reciever, self.sendmessage.as_string())
            self.errCode = "send succeed"
        except smtplib.SMTPException as e:
            self.errCode.format("send err : %s"%e)

    def result(self):
        return self.errCode

if __name__ == "__main__":
    send1 = SendMail("sender@qq.com", "sendname", "varifycode", "reciever@qq.com", "smtp.qq.com", 465, "maintitle", "send words")
    send1.send()
    print(send1.result())

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 东方刚刚发亮,清晨的露珠静静的躺在花草上,邻家的雄鸡喔喔喔清脆的歌唱,院子里的宠物狗摇摆着尾巴旺旺旺的叫唤了几声,...
    梅笑春来阅读 4,434评论 1 1
  • 姓名:荆东洋 乐观二组 【日精进打卡第17天】 【知~学习】 默读《六项精进》1遍共22遍 朗诵《大学》1遍共17...
    心儿向着未来阅读 3,957评论 0 0
  • 4.4 星期四 晴 7.1李乔雪妈妈 清明学生放假了去接孩子回家,孩子和我分享她们班里的情况,谁谁谁又逃学老师叫家...
    新视野眼镜店仲阅读 1,387评论 0 1

友情链接更多精彩内容