Python批量下載電子郵件附件並匯總合併Excel文件

  • 2019 年 12 月 17 日
  • 筆記

首先,通過查閱資料,了解電子郵件和Excel文件的結構,確定要用到的標準庫和擴展庫,並進行導入:

然後,讓我們把程式碼框架搭建起來,定義兩個函數getAttachments和mergeExcels,具體的函數程式碼可以先用pass代替一下,然後編寫主函數main來調用這兩個函數,如圖所示:

編寫getAttachments函數程式碼,實現郵件附件下載功能:

接下來,編寫函數mergeExcels的程式碼,完成合併Excel文件的功能:

在程式碼中用到的匯總表模板如下圖所示:

最後,調用前面定義的main函數,運行程式碼即可。當然,在運行過程中可能會遇到一些錯誤,這是正常的。這時,要仔細閱讀錯誤資訊,糾正所有的拼寫錯誤,在適當的位置插入print函數輸出關鍵變數的值來輔助確定錯誤原因。

運行上面的程式,只需要不到2分鐘的時間,就批量下載併合並了630份樣書申請表。然後又利用排序等方法人工複核了匯總後的Excel文件,刪除了重複發送申請表造成的重複資訊,重點檢查郵寄地址是否詳細,通過網路搜索完善了幾十條不完整的郵寄地址,刪除了幾十條地址非常不詳細且無法搜索到詳細地址(例如只寫了學校名稱,而學校官方網站上也沒有詳細地址)的資訊,最終確定有效資訊272條,這個過程花了2個小時,汗。。。。。。這次送書活動原計劃贈送240本,在清華大學出版社白立軍編輯的大力支援下,又增加了32本。所有贈書將於近日陸續由清華大學出版社直接寄出,請老師們注意查收。

Tags: