在Windows 10 系统中都有一个自带的应用程序叫做“任务计划程序” (Task Scheduler)。通过这个程序就可以实现每日定时运行特定程序的功能。
首先我们来看看如何打开任务计划程序。
敲击键盘的windows键,然后输入“任务计划程序”。可以看到出现了下面第二张截图的样子。
这个时候我们再敲击回车键就可以打开这个程序。
由于任务计划程序是没有办法直接运行python脚本。所以我们还需要准备一个bat脚本来运行python脚本。
首先我们在桌面空白位置右键新建一个文本文档。完成之后会发现文件夹中多出来一个“新建文本文档.txt”。
将文本文件命名为“获取股票当前时刻数据.bat”。“.bat”之前的文字都可以根据要实现的功能来命名。
然后用记事本打开“获取股票当前时刻数据.bat”文件,并在里面输入下面这行代码:
python "C:path oyourpythonscript.py"
比如:
这行代码的格式是python(空格),后面加上要运行的python脚本的地址。即”python 文件地址文件名”。
@echo off
python "C:UsersAdministratorDesktop est.py"
在截图的这个示例中文件地址为”C:UsersAdministratorDesktop”。文件名为”test.py”。要注意里面的分隔符号都是“” 而不是 “/”。
准备好了bat文件就可以开始设置第一步中打开的任务计划程序,来部署我们的bat文件。
1.创建一个新的文件夹来存放自己的自动化任务,方便管理
2.鼠标右键选择“创建基本任务”
然后输入每日自动运行任务的名称。如果该任务比较复杂,也可以在描述中输入该任务的具体介绍。完成之后点击下一步。
根据自己的需求选择时间
启动程序
选择要运行的bat文件,最重要的一点是起始于这个选项要填上bat文件所在的目录,否则涉及到文件读写的时候,可能会失败
通常是因为引发了FileNotFoundError异常导致程序结束,文件没找到或者路径有误。
为什么文件会不存在?
因为在任务计划程序运行程序是在电脑的用户目录下,比如C:Useruliqiao,而代码里面的文件路径使用的是相对路径的话,这样就会出现找不到文件的情况了。
完成
测试
发现任务计划程序中有了我们设置的“每日10:30更新股票数据”的自动运行任务。如果想要测试一下有没有正确设置,可以点击右边的运行按钮来试运行一下。
一些其他问题的原因:
-
windows计划任务执行,但是程序未执行
运行结果显示操作成功完成0x0,或者一直是正在运行程序0x41301状态
但此时(假设是执行脚本的计划)脚本未执行,或者没有执行结果
那么可以认为是该脚本并没有跑
排查点:
1)本地安全策略→本地策略→用户权限分配→作为批处理作业登录中有没有你要执行的脚本或者其他程序的用户,如果没有请添加
2)计划任务→属性→安全选项中的运行任务是,请使用下列用户账户,这个账户是不是有权限执行。保存的时候需要输入开机密码才行,如果电脑没有设置开机密码,需要设置开机密码后才能进行保存动作。
注:administrator和Administrators和Administrator有区别