本文源碼請見:Github 源碼
發(fā)送郵件的Python腳本網(wǎng)上有很多,就不做過多描述:
1古沥、通過本地Excel獲取原始數(shù)據(jù):
wb = load_workbook(fileName,data_only=True)
ws = wb.get_sheet_by_name('Crash')
for rown in xrange(3,7):
for coln in xrange(2,8):
value = ws.cell(row=rown,column=coln).value
if coln == 2:
all_versions.append(value)
elif coln == 3:
personNums.append(int(value))
elif coln == 4:
hanppends.append(int(value))
elif coln == 5:
today_bugly.append(float(value))
elif coln == 6:
yes_bugly.append(float(value))
for x in xrange(0,4):
bugly_flu.append(crash_rate(today_bugly[x],yes_bugly[x]))
data_source.png
2、傳入數(shù)據(jù),形成HTML網(wǎng)頁:
關(guān)于HTML的語法致讥,可自行百度,這里給個簡單的表格:
html = """\
<!DOCTYPE html>
<html>
<meta charset="utf-8">
<head>
<title>iOS - Bugly崩潰日報</title>
</head>
<body>
<div id="container">
<div id="content">
<p>
版本崩潰信息:
<table width="800" border="2" bordercolor="black" cellspacing="2">
<tr>
<td><strong>版本號</strong></td>
<td><strong>影響人數(shù)</strong></td>
<td><strong>發(fā)生次數(shù)</strong></td>
<td><strong>日崩潰率-用戶指標(biāo)</strong></td>
<td><strong>波動</strong></td>
</tr>
<tr>
<td>""" + str(all_versions[0]) + """</td>
<td>""" + str(personNums[0]) + """</td>
<td>""" + str(hanppends[0]) + """</td>
<td>""" + daily_crash_bugly(today_bugly[0]) + """</td>
<td bgcolor="#FF8040">""" + str(bugly_flu[0]) + """</td>
</tr>
<tr>
<td>""" + str(all_versions[1]) + """</td>
<td>""" + str(personNums[1]) + """</td>
<td>""" + str(hanppends[1]) + """</td>
<td>""" + daily_crash_bugly(today_bugly[1]) + """</td>
<td bgcolor="#FF8040">""" + str(bugly_flu[1]) + """</td>
</tr>
<tr>
<td>""" + str(all_versions[2]) + """</td>
<td>""" + str(personNums[2]) + """</td>
<td>""" + str(hanppends[2]) + """</td>
<td>""" + daily_crash_bugly(today_bugly[2]) + """</td>
<td bgcolor="#FF8040">""" + str(bugly_flu[2]) + """</td>
</tr>
<tr>
<td>""" + str(all_versions[3]) + """</td>
<td>""" + str(personNums[3]) + """</td>
<td>""" + str(hanppends[3]) + """</td>
<td>""" + daily_crash_bugly(today_bugly[3]) + """</td>
<td bgcolor="#FF8040">""" + str(bugly_flu[3]) + """</td>
</tr>
</table>
</p>
<p>
詳情請見附件
</p>
</div>
</div>
</body>
</html>
"""
3器赞、添加Excel附件:
part = MIMEApplication(open(fileName,'rb').read())
part.add_header('Content-Disposition', 'attachment', filename=fileName)
message.attach(part)
4垢袱、發(fā)送郵件:
def send_mail_to_test(context):
send_mail({
'to': ["wangpingyang03@mail.cn"],
'cc': ['wangpingyang03@mail.cn'],
'server': 'smtp.exmail.qq.com',
'port': 25,
'subject': 'Just for Test',
'username': 'pingyang.wang@mail.cn',
'password': 'xxxxxx',
'text': context}
)
發(fā)送郵件成功結(jié)果:
result.png