安排Python脚本 - Windows 7

时间:2010-04-27 23:00:41

标签: python windows scheduled-tasks

我有一个python脚本,我想定期运行。我正在运行Windows 7.实现这一目标的最佳方法是什么?最简单的方法?

3 个答案:

答案 0 :(得分:58)

您可以在命令行中执行以下操作:

schtasks /Create /SC HOURLY /TN PythonTask /TR "PATH_TO_PYTHON_EXE PATH_TO_PYTHON_SCRIPT"

这将创建一个名为'PythonTask'的每小时任务。你可以每天每周更换一次,每周一次等。 PATH_TO_PYTHON_EXE将类似于:C:\ python25 \ python.exe。通过在命令行中编写以下内容来查看更多示例:

schtasks /?

否则,您可以打开任务计划程序并通过GUI执行此操作。 希望这会有所帮助。

答案 1 :(得分: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“解决了这个问题。

我花了很多时间才弄明白......

答案 2 :(得分:10)

执行此操作的一种简单方法是使用具有延迟循环的连续运行脚本。例如:

def doit():
    print "doing useful things here"

if __name__ == "__main__":
    while True:
        doit()
        time.sleep(3600) # 3600 seconds = 1 hour

然后让这个脚本继续运行,它每小时就会完成一次。

请注意,这只是解决问题的一种方法;使用OS提供的服务(如任务计划程序)是另一种避免让脚本一直运行的方法。