• python-schedule模块(定时任务)基于官方文档总结


    一.模块安装

    pip3 install schedule

    官方文档

    二.常用的使用案例

    #基本格式
    #创建方法
    def func():
        print("方法")
        
    #创建定时
    schedule.every().seconds.do(func)  #每秒运行一次
    #如果方法需要传参的话do(func,参数1)
    
    
    #开循环
    while True:
        schedule.run_pending()
        
    #如果值运行一次schedule.every().day.do(func).run()
    
    • schedule.every().seconds 每秒运行一次
    • schedule.every(2).seconds 每2秒运行一次
    • schedule.every(1).to(5).seconds 每1-5秒运行一次
    • schedule.every().minutes 每分钟运行一次
    • schedule.every().hour 每小时运行一次
    • schedule.every().day 每天运行一次如果后面没有at表示每天当前时间执行一次
    • schedule.every().day.at("00:00"). 每天凌晨运行一次
    • schedule.every().week每周凌晨运行一次
    • schedule.every().wednesday.at("00:00") 每周三凌晨运行一次
    #周一到周日
    monday
    tuesday
    wednesday
    thursday
    friday
    saturday
    sunday
    
    #at一些技巧
    at(HH:MM:SS)
    at("00:00") 凌晨一点
    every().hour.at(':30')  每小时30分
    every().minute.at(':30') 没分钟30秒
    
    #关于day与days以及week和weeks,monday与mondays等等等等
    你能用day的地方一定能用days其他也一样
    如果every()里面值不为1或者空时候必须用他复数
    

    三.取消任务和取消指定任务

    取消任务

    schedule.clear()
    

    取消指定任务

    #需要引入tap
    def greet(name):
        print('Hello {}'.format(name))
    
    schedule.every().day.do(greet, 'Andrea').tag('daily-tasks', 'friend')
    schedule.every().hour.do(greet, 'John').tag('hourly-tasks', 'friend')
    schedule.every().hour.do(greet, 'Monica').tag('hourly-tasks', 'customer')
    schedule.every().day.do(greet, 'Derek').tag('daily-tasks', 'guest')
    
    schedule.clear('daily-tasks') #q取消所有标签为daily-tasks的任务
    

    四.如何让任务值执行一次

    就是在定义任务的时候加个return

  • 相关阅读:
    [转载]网站运营粮草要先行
    微信公众平台开发(一) 配置接口
    UI框架说明
    布局
    DataGrid表格控件
    Dialog控件
    mysql出现 too many connections
    JVM调优案例
    ArrayBlockingQueue源码阅读
    jdk命令行工具
  • 原文地址:https://www.cnblogs.com/pythonywy/p/11964315.html
Copyright © 2020-2023  润新知