没有额外守护进程的简单计划任务

flask-crontab的Python项目详细描述


烧瓶crontab

Simple Flask scheduled tasks without extra daemons

PyPIPyPI - Python VersionGithub ActionSupported Platforms

这个项目的灵感来源于django-crontab,并且只适用于python3.5+。 由于Python2将于2020/01/01停产,因此没有计划支持Python2。在

快速入门

通过pip安装:

$ pip install flask-crontab

在创建Flask应用程序之后,app.py中实例化扩展:

^{pr2}$

如果您使用的是App Factory模式,您也可以稍后注册扩展:

crontab=Crontab()defcreate_app():...crontab.init_app(app)

现在创建计划作业:

@crontab.job(minute="0",hour="6")defmy_scheduled_job():do_something()

每次作业运行都会自动激活应用程序上下文,以便您可以访问附加到应用程序上下文的对象。 然后将作业添加到crontab:

$ flask crontab add

就这样!如果在shell中输入crontab -l,则可以看到flask-crontab创建的一些新行。在

显示当前应用管理的作业:

$ flask crontab show

清除当前应用管理的所有作业:

$ flask crontab remove

运行哈希给定的特定作业:

$ flask crontab run <job_hash>

{via>

API装饰器

defjob(minute:str="*",hour:str="*",day:str="*",month:str="*",day_of_week:str="*",args:Tuple[Any,...]=(),kwargs:Optional[Dict[str,Any]]=None,)->Callable:

{{cd7>{cd6}接受{cd6}和^ cd6}格式相同的{cd6},^或cd6}。任何未给定的部分都默认为*。 此外,jobdecorator接受args和{},它们将分别作为位置参数和关键字参数传递给修饰函数。在

配置

Config itemDescriptionDefault value
CRONTAB_EXECUTABLEThe absolute path of ^{}^{}
CRONTAB_LOCK_JOBSWhether lock jobs when running^{}

许可证

此项目是根据MIT许可证发布的。在

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java Spinner选定值未上载到firebase数据库   java如何通过bukkit中的配置添加消息?   java在SharedReference中保存列表的泛型类型   javascript Java小程序未定义   swt在Java中构建控制台应用程序   java OAuth同意屏幕没有突然显示,没有错误?   java webview选择文件安卓不工作   java Spring boot JPA如何从同一连接添加多个数据库?   java JDBC DB2驱动程序计时器线程处于阻塞状态   java我在vscode中运行flatter时看到一个错误在phone中运行应用程序somone能否帮助我plz   Java:生成JSON:如何避免生成不完整的JSON   java Date compareTo()方法始终返回1   当使用Junit runner运行测试时,java Spring自动连线失败   java Android/Sockets如何将信息从主UI线程发送到socket线程?   java Android内存声明全局变量   java如何在JBoss中拥有多个具有相同JNDI名称的数据源?   python在Java中嵌入CPython时,为什么会挂起?   java如何提供深度模拟对象?   java“find:smallint,expected:integer”Hibernate对informix数据库的验证在短时间内失败