Python job scheduling for humans. Run Python functions (or any other callable) periodically using a friendly syntax.
- A simple to use API for scheduling jobs, made for humans.
- In-process scheduler for periodic jobs. No extra processes needed!
- Very lightweight and no external dependencies.
- Excellent test coverage.
- Tested on Python and 3.6, 3.7, 3.8, 3.9
$ pip install schedule
import schedule
schedule.every(1).steps.do(lambda: print(f'every step @ {schedule.steps}'))
schedule.every(3).steps.do(lambda: print(
f'3 step @ {schedule.steps}')).tag('3 step')
for i in range(10):
schedule.step()
if i == 6:
print('cancel 3 step')
schedule.clear('3 step')
Schedule's documentation lives at schedule.readthedocs.io.
Daniel Bader - @dbader_org - [email protected]
Inspired by Adam Wiggins' article "Rethinking Cron" and the clockwork Ruby module.
Distributed under the MIT license. See LICENSE.txt for more information.