Python3 apscheduler 定时任务实例

 个人觉得已经够详细了,去掉注释,修改一下时间就可以运行测试了!

# -*- coding:gbk -*-
import time, datetime as dt
from apscheduler.schedulers.background import BackgroundScheduler as bs

def task(taskName, Flag=True):
    print("{}已执行! 时间: {}".format(taskName, dt.datetime.now()))
 
if __name__ == "__main__":
	bs = bs()
	'''
	cron 表示定时任务, 用得最多的
	interval 表示循环任务(只支持minutes、seconds)
	date 表示具体的一次性任务(默认)
	'''
	
	# 每日指定时间执行一次
	# bs.add_job(func=task, trigger="cron", month='*', day='*', week='*', day_of_week='*', hour='23', minute='3', second=0, args=["定时任务", True], id="cron_task")
	# 同上, 每日指定时间执行一次, 不使用的参数可省略
	#bs.add_job(func=task, trigger="cron", hour='23', minute='7', args=["定时任务", True], id="cron_task")
	
	# 循环任务, 每隔三秒执行一次 task 函数
	# bs.add_job(task, "interval", seconds=3, args=["循环任务"])
	
	# 循环任务, 每隔一分钟一秒执行一次 task 函数
	# bs.add_job(func=task, trigger="interval", minutes=1, seconds=1, args=["循环任务"])
	
	# 每5秒执行一次任务,注意second="*/5",不是 seconds
	# bs.add_job(func=task, trigger="cron", second="*/5", args=["定时任务", True], id="cron_task")
	
	# 每天19:00~21:00,每隔5秒执行1次任务
	# bs.add_job(func=task, trigger="cron", hour="19-21", second="*/5", args=["定时任务", True], id="cron_task")
	
	# 每天19:01、20:01、21:01,每隔5秒执行1次任务
	# bs.add_job(func=task, trigger="cron", hour="19-21", minute=1, second="*/5", args=["定时任务", True], id="cron_task")
	
	# 每天19:10~19:20、20:10~20:20、21:10~21:20,每隔1秒执行1次任务
	# bs.add_job(func=task, trigger="cron", hour="19-21", minute="10-20", second="*", args=["定时任务", True], id="cron_task")

	# 在指定日期时间范围内, 每隔1分钟执行1次任务
	# bs.add_job(func=task, trigger="interval", minutes=1, start_date="2020-12-24 17:30:00", end_date="2020-12-24 18:30:00", args=["循环任务", True])

	# 一次性任务
	# bs.add_job(func=task, trigger="date", args=["一次性任务", True], next_run_time=dt.datetime.now() + dt.timedelta(seconds=5), id="data_task")

	# 1-12月,周一到周日,17:00到18:00 整点执行任务
	# bs.add_job(func=task, trigger="cron", month="1-12", day_of_week="mon-sun", hour="17-18", args=["定时任务", True])

	# 在2021-02-30 00:00:00之前,每周一到周五的6:30(am)触发
	# bs.add_job(func=task, trigger="cron", day_of_week="mon-fri", hour=6, minute=30, end_date="2021-02-30")
	# 每周一到周五 17:01~18:01 执行一次任务, 一天共执行两次。
	# bs.add_job(func=task, trigger="cron", minute=1, day_of_week="mon-fri", hour="17-18", args=["定时任务", True])

	# bs.remove_job("data_task")

	bs.start()
	print("Press Ctrl+C to exit")
	try:
		# This is here to simulate application activity (which keeps the main thread alive).
		while True:
			time.sleep(2)
	except (KeyboardInterrupt, SystemExit):
		# Not strictly necessary if daemonic mode is enabled but should be done if possible
		bs.shutdown()

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值