´
1. 导读
相信大家对邮件并不陌生,邮件已经成为我们平时工作中重要的沟通渠道,极大地方便了人与人之间的沟通与交流。电子邮件可以是文字、图像、声音等多种形式,用户可以从中得到大量信息。
而今天我要为大家介绍的是如何帮助运营人员实现运营日报邮件自动化?如何利用html定制漂亮的邮件正文,提升用户体验?
2. 邮件自动化思路
邮件自动化是依托MIOS产品线的API自动化测试框架,将框架中的邮件发送模块,日志记录模块,html处理模块独立出来,将方法开放给运维、运营人员,方便其日常的发送告警邮件及日报自动化功能。其具有以下优点:
1. 邮件内容更直观:邮件正文采用html,所有可以找专业的人设计效果图,输出demo,让专业的人做更专业的事;
2. 实现前后端分离:demo设计与脚本开发互不影响,只要前后端约定好数据格式即可;
3. 关键日志记录:记录脚本运行过程中的异常信息,方便排查问题。
4. 用户体验好:邮件正文可以添加图表(图片链接、折线图、条形图、表格等),数据展示非常直观,解决以往自动化邮件只有附件,没有正文的问题;
5. 降低运营成本:若运营人员每天花费1小时输出日报来算,一年就要365个小时,而采用日报自动化的方式,则可以节省了。
2.1 引用模块介绍
bottle 简介: bottle 是一个轻量级的python web框架, 可以适配各种web服务器。
以下代码示例为往html插入数据,生成html文件:
from bottle
import template
import webbrowser
#一些我们需要展示的文章题目和内容
articles=[(
"Title#1",
"Detials#1",
"http://shop.10086.cn/i/";),(
"Title#2",
"Detials#2",
"http://shop.10086.cn";),(
"Title #3",
"Detials #3",
"http://douban.fm";)]
# 定义想要生成的Html的基本格式
# 使用%来插入python代码
# 插入参数的格式为{{name}}
template_demo=
"""
demo of bottle
% for title, detail, link in items:
{{title.strip()}}
{{detail}}
%end
"""
# template_demo
为
html
模版,
items
为
html
中的参数名称
html = template(template_demo, items=articles)
with open(
"test.html",
'wb')
as f:
f.write(html.encode(
'utf-8'))
# 使用浏览器打开html
webbrowser.open(
"test.html")
2.2
图表制作示例
Ø 折线图
Ø 条形图
Ø 表格
3. 部署过程
3.1 安装模块
1. 安装python(若已安装则可以忽略)
Windows:python-2.7.12.msi安装程序包,双击运行安装即可,不用更改安装过程中的任何选项,既然你选择python,相信你是熟悉python 的,我安装目录C:\Python27。
Linux:Linux系统就自带了python,若想要升级的话,可以百度一下,哈哈。
2. 安装第三方模块
这个引用第三方模块bottle,所以需要安装下,安装方式有很多中,可以在线安装,也可以本地安装,本地安装的方式是使用cmd进入bottle目录,然后执行命令python setup.py install
3.2 邮箱信息配置
在config目录中,修改mail.conf文件
字段说明
user:账号
pwd:密码
to:默认收件人
cc:默认抄送人
win_host : 若部署环境是window主机,则在这里配置邮箱服务器host
linux_host:若部署环境是Linux主机,则在这里配置邮箱服务器host
3.3 上传原数据
3.4 上传html模版
这里的html模版就是我们邮件正文中所要用到的,程序会读取模块内容,然后往html页面写入数据。
3.5 执行方法
1. 生成html
2. 发送邮件
4. 应用案例
4.1项目案例
案例一. 山西和生活运营日报
案例二. 易监控告警