python schedule以及自定义定时任务


 

if __name__ == '__main__': # schedule 定时模块用于周以下的定时比较方便,如果涉及月等多个自定义定时则力所不及
    # #schedule方法是串行的,也就是说,如果各个任务之间时间不冲突,那是没问题的;如果时间有冲突的话,会串行的执行命令
    
    #每隔十分钟执行一次任务
    # schedule.every(10).minutes.do(main)
    #每隔一小时执行一次任务
    # schedule.every().hour.do(main)
    #每天的10:30执行一次任务
    # schedule.every().day.at("10:30").do(main)
    #每隔5到10天执行一次任务
    # schedule.every(5).to(10).days.do(main)
    #每周一的这个时候执行一次任务
    # schedule.every().monday.do(main)
    #每周三13:15执行一次任务
    # schedule.every().wednesday.at("13:15").do(main)
    #每周五4点01执行一次
    # schedule.every().friday.at("04:01").do(main)
    
    # while True:
          #run_pending:运行所有可以运行的任务
    # schedule.run_pending()
    # time.sleep(1)
    
  #下面则为自定义多个时间定时任务,可根据自己需求修改 配合https://www.cnblogs.com/HugJun/p/11936722.html
    while True: # 当前日期
        date_day = datetime.datetime.now().strftime('%Y-%m-%d %H:%M') # 每月16号
        date_16 = datetime.datetime.now().strftime('%d %H:%M') # 每月1号
        now = datetime.datetime.now() this_month_start = datetime.datetime(now.year, now.month, 1).strftime('%Y-%m-%d') + ' 10:01'

        # 星期一
        this_week_start = str(now - datetime.timedelta(days=now.weekday())).split(' ')[0] + ' 10:01'
        # 星期五
        this_friday = str(now + datetime.timedelta(days=4 - now.weekday())).split(' ')[0] + ' 10:01'
        # print(date_day)
        # print(this_friday)

        # if :
        if date_day == this_month_start or date_16=='16 10:01' or date_day == this_week_start or date_day == this_friday : main() time.sleep(30) else: time.sleep(20) 

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM