Python自動化郵件添加HTML表格圖像和Excel附件

本文源碼請見: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
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市港柜,隨后出現(xiàn)的幾起案子请契,更是在濱河造成了極大的恐慌,老刑警劉巖夏醉,帶你破解...
    沈念sama閱讀 217,826評論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件爽锥,死亡現(xiàn)場離奇詭異,居然都是意外死亡畔柔,警方通過查閱死者的電腦和手機氯夷,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,968評論 3 395
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來靶擦,“玉大人腮考,你說我怎么就攤上這事雇毫。” “怎么了踩蔚?”我有些...
    開封第一講書人閱讀 164,234評論 0 354
  • 文/不壞的土叔 我叫張陵棚放,是天一觀的道長。 經(jīng)常有香客問我寂纪,道長席吴,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,562評論 1 293
  • 正文 為了忘掉前任捞蛋,我火速辦了婚禮孝冒,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘拟杉。我一直安慰自己庄涡,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 67,611評論 6 392
  • 文/花漫 我一把揭開白布搬设。 她就那樣靜靜地躺著穴店,像睡著了一般。 火紅的嫁衣襯著肌膚如雪拿穴。 梳的紋絲不亂的頭發(fā)上泣洞,一...
    開封第一講書人閱讀 51,482評論 1 302
  • 那天,我揣著相機與錄音默色,去河邊找鬼球凰。 笑死,一個胖子當(dāng)著我的面吹牛腿宰,可吹牛的內(nèi)容都是我干的呕诉。 我是一名探鬼主播,決...
    沈念sama閱讀 40,271評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼吃度,長吁一口氣:“原來是場噩夢啊……” “哼甩挫!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起椿每,我...
    開封第一講書人閱讀 39,166評論 0 276
  • 序言:老撾萬榮一對情侶失蹤伊者,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后间护,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體删壮,經(jīng)...
    沈念sama閱讀 45,608評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,814評論 3 336
  • 正文 我和宋清朗相戀三年兑牡,在試婚紗的時候發(fā)現(xiàn)自己被綠了央碟。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 39,926評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖亿虽,靈堂內(nèi)的尸體忽然破棺而出菱涤,到底是詐尸還是另有隱情,我是刑警寧澤洛勉,帶...
    沈念sama閱讀 35,644評論 5 346
  • 正文 年R本政府宣布粘秆,位于F島的核電站,受9級特大地震影響收毫,放射性物質(zhì)發(fā)生泄漏攻走。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,249評論 3 329
  • 文/蒙蒙 一此再、第九天 我趴在偏房一處隱蔽的房頂上張望昔搂。 院中可真熱鬧,春花似錦输拇、人聲如沸摘符。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,866評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽逛裤。三九已至,卻和暖如春猴抹,著一層夾襖步出監(jiān)牢的瞬間带族,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,991評論 1 269
  • 我被黑心中介騙來泰國打工蟀给, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留蝙砌,地道東北人。 一個月前我還...
    沈念sama閱讀 48,063評論 3 370
  • 正文 我出身青樓坤溃,卻偏偏與公主長得像拍霜,于是被迫代替她去往敵國和親嘱丢。 傳聞我的和親對象是個殘疾皇子薪介,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,871評論 2 354

推薦閱讀更多精彩內(nèi)容

  • # Python 資源大全中文版 我想很多程序員應(yīng)該記得 GitHub 上有一個 Awesome - XXX 系列...
    aimaile閱讀 26,481評論 6 427
  • GitHub 上有一個 Awesome - XXX 系列的資源整理,資源非常豐富,涉及面非常廣越驻。awesome-p...
    若與閱讀 18,646評論 4 418
  • 環(huán)境管理管理Python版本和環(huán)境的工具汁政。p–非常簡單的交互式python版本管理工具。pyenv–簡單的Pyth...
    MrHamster閱讀 3,792評論 1 61
  • 今天閨蜜發(fā)來微信跟我大吐苦水缀旁,由于老公長期在外地出差记劈,她生完孩子后一直在娘家?guī)Ш⒆印I现芾瞎貋砗蟛⑽。苯觼淼剿锛?..
    雪山飛狐兒閱讀 412評論 0 0
  • 有時候 工作就像石頭砸在自己的頭上 痛苦 有時候 更像柳絮抓撓 癢癢 更有時候 我希望前方陽光一片 可是 …… 但...
    阿楊歐尼閱讀 211評論 0 0