你好,我悦创。使用系统的定期任务,可以准时的让程序执行,还可以结合邮件做汇报工作。

 

 

本文的内容,使用邮件的定期任务,结合前面的邮件汇报,每次执行完,都进行邮件的汇报工作。

 

编辑器展示

 

首先准备代码部分,如下截图【文件夹中含源码】:

 

Python邮件的定期报告_Python

 

当前截图,打开的是一个文件夹,名字是 todo-task ,里面有一个空的__init__.py 文件,以及 send_qq_mail.py 和 timing-todo.py ,以及 timing-todo-file.py 。

 

 

测试

 

第二个是需要执行的文件,第一个是发送邮件的文件,第三个是发邮件时携带附件,多了个文件名,如下代码:

 

import datetime
import random
from send_qq_mail import send_mail

with open('todo.txt','a',encoding='utf8') as file:
random_num = random.randint(1,10000)
current_time = datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S")
file.writelines("当前时间:{} 随机数值:{}\n".format(current_time, random_num))
subject = "定期任务执行完成"
contents = ["当前时间:{} 随机数值:{}\n".format(current_time, random_num),'todo.txt']
send_mail(subject,contents)

 

首先是测试代码是否正常,执行 todo 和 todo-file 的两个 py 文件,效果图如下:

 

Python邮件的定期报告_Python_02

 

一个是携带附件的,一个是纯文字的,正常。

 

 

配置定时任务

 

接下来编辑下 win 定时任务,将这个目录放到桌面,方便查看效果,以及查看邮箱的接收。

 

  • 创建任务,名称是 python-todo-file-send_mail

  • 触发是从任意时间开始,每 5 分钟执行一次,持续一小时

  • 操作是启动电脑的 Python,进入到目标文件夹,执行 timing-todo-file.py

 

配置图展示:

 

Python邮件的定期报告_Python_03Python邮件的定期报告_Python_04Python邮件的定期报告_Python_05

 

 

效果展示

 

一段时间后..........

截图看下邮箱效果图:

 

Python邮件的定期报告_Python_06

 

图中,下面两个是文件测试,一个纯文字,一个有附件。上面的四个,都是定时任务执行的代码,所发出的邮件,四个都是带附件的,都是  todo.txt