一个基于 asyncio, 设计简洁, 代码简单的计划任务库, 使用 loop.create_task 创建计划任务;
同时使用生成器特性与 croniter 的定时设计, 轻盈而强大.
pip install graia-scheduler
# or use poetry
poetry add graia-schedulerimport asyncio
from graia.broadcast import Broadcast
from graia.scheduler import GraiaScheduler
from graia.scheduler.timers import crontabify
loop = asyncio.get_event_loop()
bcc = Broadcast(loop=loop, debug_flag=True)
scheduler = GraiaScheduler(
loop, bcc
)
@scheduler.schedule(crontabify("* * * * * *"))
def something_scheduled():
print("print every seconds.")
loop.run_forever()因为基于 BroadcastControl, 你可以享受使用 Dispatcher, Interrupt, Decorator 的开发体验.