使用 Python 的日程安排模块安排任务
Scheduling tasks using Python's Schedule module
import schedule
import time
def job():
print("I'm working...")
schedule.every(10).minutes.do(job)
schedule.every().hour.do(job)
schedule.every().day.at("10:30").do(job)
while True:
schedule.run_pending()
time.sleep(1)
我知道虽然程序是 运行ning,但它会执行您告诉它的功能 运行。我不明白的是,您将如何着手将其变成每天的自动化任务。您是否会从命令行调用它并始终保持打开状态?如果我关闭我的计算机,我将不得不重新启用它,不是吗?
在这种情况下,我觉得在创建自动化 Python 任务时我缺少了一些东西。我在 windows 环境中。
这里是概述:运行 任务作为启动项在每个 OS 上意味着不同的事情,这与 python 具体无关。
在 windows 上,您可以将其设置为 windows 服务,方法是使用 python 库 Pyinstaller(将您的脚本更改为 .exe然后文件 运行ning your.exe install --startup='auto'
在基于 Linux 的 OS 上,您需要检查脚本的放置位置,因为 the startup sequence has changed in the last few years。甚至还有管理软件包,更方便。
在 mac 上有用于控制启动服务的 GUI 工具以及 launchctl http://www.macworld.com/article/2047747/take-control-of-startup-and-login-items.html
您可以通过以下方式查看当前计算机上的进程:
Windows:任务管理器(按 ctrl-alt-delete 和 select 任务管理器)
- (取决于您的 windows 版本)单击详细信息选项卡。如果它是 运行 作为系统进程,您将看到用户名为空或 "System"。
Linux或Mac:在终端类型ps -Al
回复评论:
系统级别 - 如果没有人登录,您的计算机在做什么? (你的脚本?,网络服务器?,protein folding?, dreaming of electric sheep?)
是的,每次 运行 一个单独的脚本时,Python 都会占用资源。我有 Gigs 的 RAM,Python 每个脚本需要 <30 MB 到 运行(取决于库的大小 + 程序的大小 + io 绑定 + cpu 绑定的问题)。您的系统当前有 运行ning >100 个进程,并且能够 运行 1000 个。不要担心在系统上优化你的程序,直到出现问题。
import schedule
import time
def job():
print("I'm working...")
schedule.every(10).minutes.do(job)
schedule.every().hour.do(job)
schedule.every().day.at("10:30").do(job)
while True:
schedule.run_pending()
time.sleep(1)
我知道虽然程序是 运行ning,但它会执行您告诉它的功能 运行。我不明白的是,您将如何着手将其变成每天的自动化任务。您是否会从命令行调用它并始终保持打开状态?如果我关闭我的计算机,我将不得不重新启用它,不是吗?
在这种情况下,我觉得在创建自动化 Python 任务时我缺少了一些东西。我在 windows 环境中。
这里是概述:运行 任务作为启动项在每个 OS 上意味着不同的事情,这与 python 具体无关。
在 windows 上,您可以将其设置为 windows 服务,方法是使用 python 库 Pyinstaller(将您的脚本更改为 .exe然后文件 运行ning
your.exe install --startup='auto'
在基于 Linux 的 OS 上,您需要检查脚本的放置位置,因为 the startup sequence has changed in the last few years。甚至还有管理软件包,更方便。
在 mac 上有用于控制启动服务的 GUI 工具以及 launchctl http://www.macworld.com/article/2047747/take-control-of-startup-and-login-items.html
您可以通过以下方式查看当前计算机上的进程:
Windows:任务管理器(按 ctrl-alt-delete 和 select 任务管理器)
- (取决于您的 windows 版本)单击详细信息选项卡。如果它是 运行 作为系统进程,您将看到用户名为空或 "System"。
Linux或Mac:在终端类型
ps -Al
回复评论:
系统级别 - 如果没有人登录,您的计算机在做什么? (你的脚本?,网络服务器?,protein folding?, dreaming of electric sheep?)
是的,每次 运行 一个单独的脚本时,Python 都会占用资源。我有 Gigs 的 RAM,Python 每个脚本需要 <30 MB 到 运行(取决于库的大小 + 程序的大小 + io 绑定 + cpu 绑定的问题)。您的系统当前有 运行ning >100 个进程,并且能够 运行 1000 个。不要担心在系统上优化你的程序,直到出现问题。