flask实现邮件自动发送

研零开学前接了一个邮件自动发送的单子,用阿里云邮件推送sdk实现邮件的自动发送功能。该任务的关键如下:

功能描述

  1. 使用多个阿里云账户轮流发送,若有未发送完成的邮件,第二天接着发送(阿里云初始限额一天2000封邮件,若超出额度则换账户发送或者第二天继续发送)
  2. 记录邮件发送进度,若意外中断,再次执行该任务时能够跳过已经发送的联系人
  3. 记录任务执行情况,包括邮件发送进度、邮件发送状态(包含发送成功、垃圾邮箱、用户拒收、发送失败)
  4. 前端提供表格导入导出功能,能够对联系人数据、发信模板等内容进行增删改查
  5. 前端能够创建任务,并配置发送任务的联系人分组和邮件模板(支持图片,自动修正每个联系人的名字)
  6. 前端能够对阿里云账户(配置账户名、账户密码、消息接入地址、发信域名等信息并生成json配置文件)

实现步骤

1.使用阿里云邮件发送服务之前需要注册域名等操作,这些操作本文不进行记录。

2.前端实现
前端使用vue+elementui实现,邮件模板部分使用quill富文本编辑器,页面如下:
在这里插入图片描述
从零开始构建vue2.0项目:

其中邮件模板编辑页面涉及到富文本保存到数据库中,最开始使用的富文本编辑器自动将图片转为base64的格式,而base64格式的图片往往比较大,这就导致图片不好存入数据库。最后的解决方案如下:

前端使用axios跟接口服务器进行交互

3.后端实现
后端使用flask构建项目,使用阿里云smpt邮件服务的sdk实现发送功能
从零开始构建flask项目过程:

阿里云sdk简要分析:

发送的逻辑:

4.部署到linux系统

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值