大家可能會遇到這樣一種情況:有沒有什么辦法可以將郵箱里面的郵件全部下載到本地(包括圖文、壓縮附件、文檔附件等)。比如HR、收集意見的工作人員甚至是一些負責收郵件的老師等人都會遇到這種情況。
今天辰哥就教大家如何利用Python去下載郵箱中的全部郵件,本文核心庫主要是zmail。
01、准備工作
1.安裝庫
pip install zmail
通過上面的命令即可安裝zmail
導入庫
import zmail
2.開啟****POP3/SMTP服務
在程序中登錄QQ郵箱不是使用qq郵箱密碼,是使用POP3/SMTP服務口令,所以我們這里先獲取口令
第一步:登錄qq郵箱點擊設置,再點賬戶
第二步:開啟POP3/SMTP,點擊開啟后會生成一段字符串(token),這里辰哥已經開啟了
02、下載全部郵件
1.登錄賬戶
下載的全部郵件都會保存在文件夾chenge中
2.讀取全部郵件
目標:下載全部的郵件。所以這里獲取到郵件數,並通過循環去遍歷
3.創建保存文件夾
這里提取郵件日期和主題,在chenge文件夾下為該郵件創建文件夾(到時候保存正文內容和附件)
4.保存郵件正文
判斷本地是否存在該郵件命名的文件夾,不存在則創建。
提取正文內容保存到正文文本.txt,txt中的格式如下:
5.保存附件
一行代碼就可以將附件,包括正文中的插圖直接下載保存到指定文件夾中
03、演示程序
1.郵件示例
這里准備了兩份郵件(一份圖+文,一份附件+文)
一份圖+文
這份郵件有正文,正文插圖,圖片附件
一份附件+文
這份郵件有正文,正文插圖,壓縮包附件
2.執行程序
結果如下:
04、小結
為了大家方便學習,辰哥把本文的完整源碼上傳,需要的通過同名公眾回復:郵件下載
本文講解了如何通過Python教大家如何利用Python去下載郵箱中的全部郵件,不明白的地方可以在下方留言,一起交流。