Bti*_*rt3 46 python windows scheduled-tasks
我有一个python脚本,我想定期运行.我正在运行Windows 7.实现这一目标的最佳方法是什么?最简单的方法?
Gle*_*son 61
您可以在命令行中执行以下操作:
schtasks /Create /SC HOURLY /TN PythonTask /TR "PATH_TO_PYTHON_EXE PATH_TO_PYTHON_SCRIPT"
Run Code Online (Sandbox Code Playgroud)
这将创建一个名为"PythonTask"的小时任务.您可以使用DAILY,WEEKLY等替换HOURLY .PATH_TO_PYTHON_EXE将类似于:C:\ python25\python.exe.通过在命令行中编写以下内容来查看更多示例:
schtasks /?
Run Code Online (Sandbox Code Playgroud)
否则,您可以打开任务计划程序并通过GUI执行此操作.希望这可以帮助.
Mar*_*oij 52
您可以使用控制面板中的GUI(称为"计划任务")来添加任务,其中大部分应该是不言自明的,但有两点需要注意:
确保C:\python27\python.exe
以程序路径填写,并将脚本的路径作为参数填写.
如果你选择Run whether user is logged on or not
我得到一个错误:The directory name is invalid (0x87010B)
.选择Run only when user is logged on
"解决"这个问题.
我花了很多时间才弄明白......
Gre*_*ill 12
一种简单的方法是使用具有延迟循环的连续运行脚本.例如:
def doit():
print "doing useful things here"
if __name__ == "__main__":
while True:
doit()
time.sleep(3600) # 3600 seconds = 1 hour
Run Code Online (Sandbox Code Playgroud)
然后让这个脚本运行,它每小时就会完成一次.
请注意,这只是解决问题的一种方法; 使用OS提供的服务(如任务计划程序)是另一种避免让脚本一直运行的方法.