schedule
This fork
The current project is a fork of the incredible work of Daniel Bader (https://github.com/dbader/schedule) and all contributors (see AUTHORS.rst). I was focused in having support for cronjob expression in the ‘schedule’ library engine. There’s an interesting pull request from Romain Michel (https://github.com/dbader/schedule/pull/581) that implements exactly what I need. After having reviewed and tested the work of Romain, I’ve merged his pull request into this forked repo and published on pypi under the name of ‘schedule-cronjob’ (https://pypi.org/project/schedule-cronjob/)
Schedule
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.7, 3.8, 3.9, 3.10, 3.11
Usage
$ pip install schedule-cronjob
import schedule
import time
def job():
print("I'm working...")
schedule.every(10).seconds.do(job)
schedule.every(10).minutes.do(job)
schedule.every().hour.do(job)
schedule.every().day.at("10:30").do(job)
schedule.every(5).to(10).minutes.do(job)
schedule.every().monday.do(job)
schedule.every().wednesday.at("13:15").do(job)
schedule.every().day.at("12:42", "Europe/Amsterdam").do(job)
schedule.every().minute.at(":17").do(job)
schedule.every().crontab_expression("5 4 * * 2,5", "Europe/Amsterdam").do(job)
def job_with_argument(name):
print(f"I am {name}")
schedule.every(10).seconds.do(job_with_argument, name="Peter")
while True:
schedule.run_pending()
time.sleep(1)
Documentation
Schedule’s documentation lives at schedule.readthedocs.io.
Meta
Daniel Bader - @dbader_org - mail@dbader.org
Inspired by Adam Wiggins’ article “Rethinking Cron” and the clockwork Ruby module.
Distributed under the MIT license. See LICENSE.txt for more information.
Metadata
Release files for schedule-cronjob 1.3.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| schedule-cronjob-1.3.1.tar.gz | 26.9 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| schedule_cronjob-1.3.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 45.4 kB
Release files / schedule-cronjob-1.3.1.tar.gz
| Download URL | schedule-cronjob-1.3.1.tar.gz |
|---|---|
| Size | 26.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
33d40e398480bcd73ccc3320f3182708b54b555822eee939478cf7bbff09f7d9
|
|
BLAKE2b-256 checksum How to use checksums |
428927fc3cd6cd18d1f6d23ff6c6748391925f6c61b99d69de73855a99740e2b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.10.12
|
Release files / schedule_cronjob-1.3.1-py3-none-any.whl
| Download URL | schedule_cronjob-1.3.1-py3-none-any.whl |
|---|---|
| Size | 18.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
145c7516d975e87e117671368ef413a019c9bc919acbf91cff6cd62b58c2fba1
|
|
BLAKE2b-256 checksum How to use checksums |
c34e5dd2301d4785ca779ef8ce442faf686bf7ad0dcfd047e0ba6c5bf28bcbd5
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.10.12
|