利用 Window 計(jì)劃任務(wù)定時(shí)發(fā)送郵件
計(jì)劃任務(wù)是 Windows 系統(tǒng)自帶的功能,利用 “任務(wù)計(jì)劃”,可以將任何腳本、程序或文檔安排在某個(gè)最方便的時(shí)間運(yùn)行。“任務(wù)計(jì)劃” 在每次啟動(dòng) Windows 系統(tǒng)的時(shí)候啟動(dòng)并在后臺(tái)運(yùn)行。使用 “任務(wù)計(jì)劃” 可以完成以下任務(wù):計(jì)劃讓任務(wù)在每天、每星期、每月或某些時(shí)刻(例如系統(tǒng)啟動(dòng)時(shí))運(yùn)行。如每天 10 點(diǎn)給電腦進(jìn)行殺毒,17 點(diǎn)定時(shí)關(guān)機(jī)等等,都可以使用計(jì)劃任務(wù)來(lái)完成。
在工作中,會(huì)有很多時(shí)間節(jié)點(diǎn),比如項(xiàng)目上線時(shí)間、每周郵件通報(bào)的用戶反饋、每個(gè)月的月度報(bào)表、月度總結(jié)等等。在需要固定時(shí)間發(fā)送郵件的時(shí)候,都可以設(shè)置定時(shí)發(fā)送,目前大多數(shù)郵箱也都支持了定時(shí)發(fā)送的功能,除此之外,我們還可以在代碼中實(shí)現(xiàn)定時(shí)發(fā)送這一功能。本小節(jié)將利用 Window 計(jì)劃任務(wù)實(shí)現(xiàn)定時(shí)發(fā)送郵件。
1. 整體思路
- 通過(guò) zmail 模塊實(shí)現(xiàn)郵件發(fā)送;
- 在 Windows 計(jì)劃上配置計(jì)劃任務(wù);
2. 實(shí)現(xiàn)步驟
步驟 1:通過(guò) zmail 模塊實(shí)現(xiàn)郵件發(fā)送
#導(dǎo)入zmail模塊
import zmail
#構(gòu)建郵件內(nèi)容
mail = {
'subject': '這是一封定時(shí)郵件!',
'content_text': '測(cè)試內(nèi)容!'
}
server = zmail.server('xxxx@qq.com', 'xlogucqphohxcabi')
#發(fā)送郵件
server.send_mail("xxxx@163.com", mail)
代碼解釋:首先通過(guò) zmail 實(shí)現(xiàn)一封普通郵件的發(fā)送,這里的代碼同前面小節(jié)中發(fā)送郵件代碼一致。
由于在 Windows 計(jì)劃中僅支持運(yùn)行 bat 或 exe 程序,所以在當(dāng)前 Python 文件同目錄下,創(chuàng)建 index.bat 文件,執(zhí)行發(fā)送郵件的 Python 文件(index.py)內(nèi)容如下:
python index.py
步驟 2:配置 Window 計(jì)劃任務(wù)
啟動(dòng) Windows 計(jì)劃任務(wù),在【控制面板】->【管理工具】->【任務(wù)計(jì)劃程序】,啟動(dòng)后界面如下圖所示。
新建計(jì)劃任務(wù),如下圖所示:
設(shè)置計(jì)劃任務(wù)觸發(fā)器,每天執(zhí)行一次,配置內(nèi)容如下圖所示:
設(shè)置計(jì)劃任務(wù)操作,即觸發(fā)時(shí)執(zhí)行什么操作,這里即觸發(fā)后執(zhí)行 index.bat,配置內(nèi)容如下圖所示:
按照以上步驟配置完成后,打開接收郵件的郵箱,即可看到接收到發(fā)送過(guò)來(lái)的定時(shí)郵件。
3. 小結(jié)
本節(jié)課程我們主要學(xué)習(xí)了使用 Windows 計(jì)劃任務(wù)實(shí)現(xiàn)定時(shí)郵件發(fā)送。本節(jié)課程的重點(diǎn)如下:
- 了解定時(shí)郵件發(fā)送的概念;
- 掌握利用 Window 計(jì)劃任務(wù)實(shí)現(xiàn)定時(shí)郵件的使用方法。