成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

我用Python批量讀取考生成績單,并自動發送錄取通知書郵件

開發 后端
高考剛結束不久,很多小伙伴肯定都期待有個好成績,能夠進入理想的大學。而一旦成績出來,大學招生辦老師將面臨給廣大學子發送錄取通知書的巨大工作壓力,本文將利用Python技術,手把手教你用Python批量讀取考生成績,郵件合并且自動發送郵件,趕緊學起來吧~

[[405127]]

本文轉載自微信公眾號「菜J學Python」,作者 J哥、燕子。轉載本文請聯系菜J學Python公眾號。

 前言

大家好,我是J哥。

高考剛結束不久,很多小伙伴肯定都期待有個好成績,能夠進入理想的大學。而一旦成績出來,大學招生辦老師將面臨給廣大學子發送錄取通知書的巨大工作壓力,本文將利用Python技術,手把手教你用Python批量讀取考生成績,郵件合并且自動發送郵件,趕緊學起來吧~

需求如下:

02準備工作

首先,我們將圖中三個文件置于同一文件夾中,郵件合并.ipynb為新建的Python文件,123郵件合并數據源.xls為成績Excel表,郵件合并模板.docx為錄取通知書模板。

我們打開錄取通知書模板,長這樣:

如果你使用過Word郵件合并功能批量生成文件,那這種模板就再熟悉不過了。

03實戰演練

文件都準備完畢,接下來打開Python文件,開始編寫代碼。

1、導入模塊

導入之前需要安裝兩個主要庫,一個是操作word模板的doctxpl,一個是操作郵件的zmail。因此先pip它們,很快~

  1. #安裝模塊 
  2. pip install docxtpl 
  3. pip install zmail 

接著導入需要用到的模塊:

  1. #導入模板庫 
  2. from docxtpl import DocxTemplate 
  3. import pandas as pd 
  4.  
  5. #導入郵件庫 
  6. import zmail 
  7. import time 

2、郵件合并

運用pandas的read_excel方法讀取考生成績表,逐個遍歷考生信息,并將關鍵信息渲染至Word模板中,最后以考生姓名作為文件名保存。

  1. #讀取數據源 
  2. df=pd.read_excel('123郵件合并數據源.xls'
  3. print(df) 
  4.  
  5. #Word郵件合并批量生成錄取通知書 
  6. for i in range(len(df)): 
  7.     #以字典形式存儲模板中需要更新的關鍵信息 
  8.     contxt=dict(df.iloc[i]) 
  9.     #獲取姓名,作為文件名 
  10.     filename=contxt['姓名'
  11.     #獲取郵箱地址 
  12.     youxiang=contxt['郵箱'
  13.     #打開模板文件 
  14.     tpl = DocxTemplate('郵件合并模板.docx'
  15.     #渲染(更新)模板文件生成新文件 
  16.     tpl.render(contxt) 
  17.     #保存文件 
  18.     tpl.save(filename+'.docx'

運行結果:

3、發送郵件

接下來,我們需要將新生成的錄取通知書逐個通過QQ郵箱發送,發件之前呢,需要對QQ郵箱進行簡單配置。

第1步:打開QQ郵箱,點擊設置-賬戶,一直拉到SMTP服務。

開啟SMTP服務,結果系統提示J哥的QQ沒有申請第二代密碼保護,無法開啟,于是申請密保。申請密保主要是把手機號綁定你的QQ,如果申請過程中忘記一些信息,邀請你的好友輔助驗證即可~

好友輔助驗證完成后,按要求發送短信:

終于拿到授權碼(Python發送QQ郵件必備參數):

第2步:加入發送郵件的Python代碼段

發送郵件的代碼相對簡單,以下代碼段也給出了詳細的注釋,當然,最有效的學習方式還是參考官方文檔,可以對各個參數進行深入研究。

  1. #設置郵件主題 
  2.    subject='錄取通知書' 
  3.    #設置郵件內容 
  4.    content='你己被我校錄取,請妥善保管通知書,并按時報到!' 
  5.    #設置郵件附件 
  6.    attachment=filename+'.docx' 
  7.    #設置郵件信息 
  8.    mail={'subject':subject,'content_text':content,'attachments':attachment} 
  9.    #設置發件郵箱 
  10.    server = zmail.server('你的@qq.com','你的授權碼'
  11.    #發送郵件 
  12.    server.send_mail(youxiang,mail) 
  13.    time.sleep(2) 
  14.    print('第'+str(i+1)+'封郵件己發送成功'

郵件發送后,打開其中一封郵件,如下:

04完整代碼

  1. #導入模板庫 
  2. from docxtpl import DocxTemplate 
  3. import pandas as pd 
  4. #導入郵件庫 
  5. import zmail 
  6. import time 
  7. #讀取數據源 
  8. df=pd.read_excel('123郵件合并數據源.xls'
  9. print(df) 
  10.  
  11. #生成文件并以附件形式發送到郵箱 
  12. for i in range(len(df)): 
  13.     #以字典形式存儲模板中需要更新的關鍵信息 
  14.     contxt=dict(df.iloc[i]) 
  15.     #獲取姓名,作為文件名 
  16.     filename=contxt['姓名'
  17.     #獲取郵箱地址 
  18.     youxiang=contxt['郵箱'
  19.     #打開模板文件 
  20.     tpl = DocxTemplate('郵件合并模板.docx'
  21.     #渲染(更新)模板文件生成新文件 
  22.     tpl.render(contxt) 
  23.     #保存文件 
  24.     tpl.save(filename+'.docx'
  25.     #設置郵件主題 
  26.     subject='錄取通知書' 
  27.     #設置郵件內容 
  28.     content='你己被我校錄取,請妥善保管通知書,并按時報到!' 
  29.     #設置郵件附件 
  30.     attachment=filename+'.docx' 
  31.     #設置郵件信息 
  32.     mail={'subject':subject,'content_text':content,'attachments':attachment} 
  33.     #設置發件郵箱 
  34.     server = zmail.server('你的@qq.com','你的授權碼'
  35.     #發送郵件 
  36.     server.send_mail(youxiang,mail) 
  37.     time.sleep(2) 
  38.     print('第'+str(i+1)+'封郵件己發送成功'
  39.  
  40. print('郵件己全部發送成功'

 

責任編輯:武曉燕 來源: 菜J學Python
相關推薦

2018-09-05 15:31:25

編程語言PythonExcel

2018-07-23 14:12:31

物流

2015-06-15 10:11:38

小米內容陳彤

2023-12-06 11:10:08

2022-06-07 14:42:23

5G運營商數據

2020-03-30 12:07:29

數字化

2013-08-13 09:32:53

微軟Windows 8銷量

2021-03-16 14:45:06

比特幣加密貨幣貨幣

2021-12-14 07:40:08

Excel自動化辦公

2015-05-14 19:23:47

思科錢伯斯

2017-04-26 09:00:23

Python發送郵件腳本

2017-09-15 10:36:41

大數據貧困學生資助

2010-01-06 10:21:23

2021-02-01 11:03:36

Python開發郵件

2021-06-29 11:40:51

Python郵件命令

2022-03-21 10:09:08

PythonExcel郵件

2012-02-02 09:34:32

蘋果三星諾基亞

2011-10-31 09:35:50

點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 午夜成人免费视频 | 手机av在线| 一级黄色裸片 | 综合色久 | 亚洲国产精品suv | 91精品中文字幕一区二区三区 | 久久久久久久综合色一本 | 性做久久久久久免费观看欧美 | 福利av在线 | 亚洲在线一区 | 中文在线一区二区 | а_天堂中文最新版地址 | 狼色网| 中文精品一区二区 | 亚洲成人av在线播放 | 亚洲欧美日韩成人在线 | 国产国语精品 | 久久久久网站 | 久久三区 | 中日韩av | 亚洲视频 欧美视频 | 日韩视频在线免费观看 | 亚洲高清在线 | 高清视频一区二区三区 | 欧美成人激情视频 | 欧美精品1区2区 | 亚洲国产一区二区三区 | 99热视 | 久久久久久99 | 亚洲精品久久久久久久久久久久久 | 色www精品视频在线观看 | 精品国产乱码久久久久久老虎 | 91精品国产91久久久久游泳池 | 欧洲一区二区视频 | 激情久久av一区av二区av三区 | 久久久久久久国产精品影院 | 天天躁日日躁xxxxaaaa | 日本在线视 | 国内精品伊人久久久久网站 | 久久精品一区二区三区四区 | 久久精品网 |