windows创建定时任务执行python脚本

楼主最近写了一个简单的Python程序,想让这个小程序每天上午10点定时运行一次,因为我的电脑是Windows系统,无法使用Linux下强大的crontab命令,所以我只好求助于度娘。我搜到了好几个相关的网页,但是看完之后仍然不明白应该怎么做,最后经过多次推理和尝试才设置成功。我相信以后还会有人想要知道在Windows下怎么设置Python程序定时运行,因此把我的经验写在这里,希望能帮助到大家。

为了照顾更多的朋友,下面我将每一步都截图并加以简单说明,如果觉得太啰嗦可以直接翻到后面看最关键的一步如何设置。

首先,我们肯定是要用到Windows下的【计划任务】功能(注:楼主的系统是Windows8.1,但是Windows7或Windows10情况应该差不多),如下图所示:




之后点击右侧的【创建基本任务】,输入任务名称以及可选的任务描述:



点击下一步,设置任务的开始时间,这个应该没什么难度,我这里设置为每天早上10点运行此计划任务:



点击下一步,设置【操作】为【启动程序】,再点击下一步,最关键的地方来了,这里该怎么填写才能保证系统正确地运行Python程序呢?




废话不多说,先看具体的设置:



这里解释一下三个文本框内容的含义,【程序或脚本】文本框中填的是Python编译器的名称,一般就是python.exe,【起始于】文本框中填的是Python编译器的目录,上图中假设你的Python编译器的完整路径是“C:\Python27\python.exe”,【添加参数】文本框中填的是你的Python程序的完整路径,这里假设在C盘的Users文件夹下面有一个叫做code.py的文件。如果你的Python程序包含命令行参数,将其添加到Python程序的完整路径之后即可。


相信聪明的读者已经发现了,如果将这三部分连在一起,就是“C:\Python27\python.exe C:\Users\code.py”,这其实就是在Windows命令行下输入“python C:\Users\code.py”(或“python code.py”,如果你正好在C:\Users目录下),只是在计划任务的设置中需要给出完整的python编译器的路径而已。

之后点击下一步就可以点击完成了,是不是很简单?

### 配置Windows定时任务运行Python脚本 #### 使用Windows任务计划程序创建定时任务 为了在特定时间间隔执行位于`D:\Project\pythonProject1\1.py`的Python脚本,可以利用Windows内置的任务计划程序功能。通过该工具能够设定精确的时间表来触发所需的操作。 当创建一个新的基本任务时,在操作选择里指定启动程序的动作,并指向Python解释器的位置,参数处填入待执行的`.py`文件全路径[^1]。 对于更复杂的调度需求或者希望以批处理方式循环调用Python脚本的情况,则可以通过编写Batch(.bat)文件实现自动化流程控制。例如: ```batch @echo off :C:\path_to_python_executable\python.exe D:\Project\pythonProject1\1.py timeout /t 60 /nobreak goto loop ``` 此段代码将持续每分钟执行一次给定的Python脚本直到手动终止进程。不过需要注意的是这种方式更适合于测试环境而非生产环境中长期稳定的服务部署方案[^2]。 另外一种方法是借助命令行工具`schtasks`来进行一次性或周期性的任务安排。这允许用户无需图形界面就能完成任务定义工作,非常适合远程管理和批量配置场景下的应用。具体指令如下所示用于建立名为“PythonScriptTask”的新任务,它会每隔一分钟重复执行关联到的批处理文件中的命令序列;而要停止或是移除已有的同名条目则分别对应着其他两个子命令选项。 ```bash schtasks /create /sc minute /mo 1 /tn "PythonScriptTask" /tr "C:\full_path_to_your_batch_file.bat" schtasks /end /tn "PythonScriptTask" schtasks /delete /tn "PythonScriptTask" ``` 以上几种途径均可满足不同层次的需求,从简单的日常维护作业直至复杂的企业级后台服务支持都能找到合适的解决方案。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值