<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          HR小姐姐福利,用Python教你實現excel+郵箱的批量工資條發(fā)送!

          共 3392字,需瀏覽 7分鐘

           ·

          2021-11-12 16:00


          大家好,我是菜鳥哥!今天給大家安利一個干貨!


          在職場辦公中,能夠利用python來實現自動化辦公的場景非常之多,可以說,學會了利用python來幫助自己實現自動化的辦公,就能夠節(jié)省自己大量的時間。想想看,別人花一天的時間在進行大量而重復的操作。


          而你卻可以敲敲代碼,分分鐘就可以讓程序來幫你搞定。然后剩余的時間就可以喝茶摸魚,這樣的生活豈不快哉?



          01.業(yè)務場景

          很多小伙伴可能都遇到通過郵件來向同事或者朋友們發(fā)送信息。例如財務小姐姐們的工資條發(fā)放。就是一個比較典型的應用場景。需要利用excel+郵箱的組合來完成工資條的發(fā)放,財務需要將數據寫入到excel表格中進行統計,同時需要將每位員工的工資條數據,發(fā)送到各位員工的郵箱當中。


          02.Python辦公自動化

          要利用python實現自動化的辦公,我們首先來看一下,整個流程是如何實現的吧:


          上圖給出的便是工資條的自動化郵箱發(fā)送,所需要的一些基本流程。大家可以看到,流程主要分為了excel的操作以及郵箱的操作兩部分的內容。


          03.程序的實現

          對于excel部分的操作。我們首先需要有工資條的具體內容信息,包含了員工工資的一些基本信息,例如“姓名 基本工資 出勤天數 ”等內容。


          這里需要將郵箱的數據從工資條數據中獨立出來,一方面工資條中不需要攜帶郵箱數據,另一方面,將郵箱數據獨立出來,可以方便財務進行郵箱內容和格式的審查,確保發(fā)送郵箱的正確。畢竟萬一發(fā)錯了郵箱數據,那可是非常嚴重的一件事情。


          將工資條數據寫入到excel文件的自動化過程,菜鳥哥采用的是openpyxl庫,它可以處理xlsx格式的Excel(2007版之后)文件。大家可以通過pip install openpyxl的命令進行安裝。

          上圖的程序,將除郵箱以外的數據寫入到本地的excel文件當中。

          • 首先,利用openpyxl庫來創(chuàng)建一個xlsx文件工作簿(19行)。

          • 然后在工作簿中,創(chuàng)建一個工作表,并命名為Sheet1(20行)。將title中的序號、姓名等信息寫入到工作表當中(21行)。

          • 接下來就是將每一名的員工數據通過for循環(huán)的方式來添加到工作表當中,然后保存工作簿(22-25行)。

          添加完成后的結果如下圖所示:

          接下來我們通過打開xlsx文件,來將我們的郵箱數據逐個的寫入到指定的位置。

          • 程序首先是利用load_workbook函數來打開我們創(chuàng)建的工作簿(29行)。

          • 然后同樣是選中“Sheet1”工作表,并命名為mytables(30行)。

          • 接下來在第一行中,通過cell函數,來添加標題名“郵箱”(31行)。

          • 同樣的,對于每名員工的郵箱數據,也通過for循環(huán)的方式來添加到郵箱,并保存工作簿的內容(32-35行)。

          這里我們重點來解釋一下cell函數的用法。

          cell函數通過指定行和列的方式,來為工作表中的指定單元格添加或者是更改內容。cell函數的行和列是從1開始的。例如我們對于“郵箱”標題的添加。

          mytables.cell(row=1, column=len(title)+1).value = "郵箱"  # 在標題中添加“郵箱”

          其中row=1,column為12。這樣就可以為工作表中第一行第12列的單元格添加數據。


          通過程序添加郵箱之后的excel表格內容,如下圖所示:

          可以看到,郵箱數據被正確的添加到excel的表格中去。


          04.郵箱發(fā)送

          使用python來發(fā)送郵件的思路其實和日常通過網頁客戶端來發(fā)送郵件一樣,過程都是,登錄郵箱 —>撰寫郵件內容 —>點擊 發(fā)送。以下為郵件發(fā)送整個過程的思維導圖。

          通過python來發(fā)送郵件,我們需要使用到的python庫為smtplibemail。

          smtplib庫利用SMTP的郵箱傳輸協議操作,在郵件發(fā)送的過程中實現服務器之間的相互通信。大家可以將其理解為郵件的投遞員。email庫則是幫助我們撰寫郵件信息,例如郵件主題,郵件內容等信息,大家可以理解為郵件的打包員。

          接下來,為了實現腳本的郵件傳輸功能,大家需要在郵箱中開啟授權碼。這里菜鳥哥以網易郵箱為例。

          在網頁版的網易郵箱中,按照上述的操作步驟,即可獲取到網易郵箱的授權碼。

          接下來就可以利用excel+郵箱的結合,來實現自動化的工資條發(fā)送。

          程序首先設置了郵箱服務器所需要的信息,包括了郵箱的用戶名,以及郵箱的授權碼(41-44行)。
          這里的mail_host大家不需要改動。sender則是發(fā)送方的郵箱名。例如[email protected]。而mail_user則是sender中@符號前面的內容,例如1233344444。mail_pass是前面通過郵箱設置開通的授權碼。
          程序設置了郵件內容的模板格式,并通過openpyxl庫來打開了excel文件,并讀取”Sheet1“工作表(46-49行)

          程序的后半部分,首先是通過smtplib庫來連接并登錄郵箱服務器(52-54行);接下來就是通過讀取”Sheet1“表當中的信息,來構建郵件的文本內容。并通過email庫來設置郵件的主題,發(fā)送方以及接收方的郵件地址(55-64行)。通過for循環(huán)的方式向每一位員工發(fā)送工資條信息;
          當郵件全部發(fā)送完畢后,郵箱推出,并打印出成功的信息(66-67行);如果郵件發(fā)送失敗,則及時打印出錯誤的信息,并推出程序,方便及時查看程序所發(fā)生的具體錯誤(68-70行)。


          05.效果展示

          點擊運行程序后,程序成功執(zhí)行,接收方接受到的郵件如下圖所示。


          總結
          可以看到,程序完美的完成了自動化工資條的發(fā)放工作,每個同事都及時的收到了工資條信息。利用自動化的辦公方式,也將我們從繁重單調的工作中解放出來。
          原創(chuàng)不易,希望大家在留言區(qū)捧個場支持一下,月底統計常來留言的同學送書,給個三連哈!你的支持,就是我原創(chuàng)的最佳動力!



          大神來教大家玩服務器:
          安老師,某大廠互聯網公司的資深后端大神,有5年多的后端開發(fā)經驗,教大家玩轉云服務器。玩Linux,安裝Python,安裝數據庫,用Django+uwsigi+nginx web服務搭建網站,求職簡歷網站搭建,寫腳本部署股票基金機器人,還可以搭建個人網盤!

          星球的價格是一年88元,然后現在雙11期間有優(yōu)惠券20元,相當于是68一年,算下來每個月6塊錢,連半杯奶茶的錢都不到,一天才2毛錢,非常劃算。





          推薦閱讀:

          入門:?最全的零基礎學Python的問題? |?零基礎學了8個月的Python??|?實戰(zhàn)項目?|學Python就是這條捷徑


          干貨:爬取豆瓣短評,電影《后來的我們》?|?38年NBA最佳球員分析?|? ?從萬眾期待到口碑撲街!唐探3令人失望? |?笑看新倚天屠龍記?|?燈謎答題王?|用Python做個海量小姐姐素描圖?|碟中諜這么火,我用機器學習做個迷你推薦系統電影


          趣味:彈球游戲? |?九宮格? |?漂亮的花?|?兩百行Python《天天酷跑》游戲!


          AI:?會做詩的機器人?|?給圖片上色?|?預測收入?|?碟中諜這么火,我用機器學習做個迷你推薦系統電影


          小工具:?Pdf轉Word,輕松搞定表格和水?。?/a>?|?一鍵把html網頁保存為pdf!|??再見PDF提取收費!?|?用90行代碼打造最強PDF轉換器,word、PPT、excel、markdown、html一鍵轉換?|?制作一款釘釘低價機票提示器!?|60行代碼做了一個語音壁紙切換器天天看小姐姐!


          年度爆款文案

          瀏覽 60
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  亲子乱AⅤ一区二区三区 | 丁香五月婷婷色色 | 99热官网| 伊人成人在线观看 | 青娱乐在线观看网址 |