Job scheduling for humans.
Project description
Python job scheduling for humans.
An in-process scheduler for periodic jobs that uses the builder pattern for configuration. Schedule lets you run Python functions (or any other callable) periodically at pre-determined intervals using a simple, human-friendly syntax.
Inspired by Adam Wiggins’ article “Rethinking Cron” (Google cache) and the clockwork Ruby module.
Features
A simple to use API for scheduling jobs.
Very lightweight and no external dependencies.
Excellent test coverage.
Works with Python 2.7 and 3.3
Usage
$ pip install schedule
import schedule
import time
def job():
print("I'm working...")
schedule.every(10).minutes.do(job)
schedule.every().hour.do(job)
schedule.every().day.at("10:30").do(job)
while True:
schedule.run_pending()
time.sleep(1)
FAQ
In lieu of a full documentation (coming soon) check out this set of frequently asked questions for solutions to some common questions.
Meta
Daniel Bader – @dbader_org – mail@dbader.org
Distributed under the MIT license. See LICENSE.txt for more information.
History
0.1.11 (2013-07-30)
Fixed an issue with next_run() throwing a ValueError exception when the job queue is empty. Thanks to @dpagano for pointing this out and thanks to @mrhwick for quickly providing a fix.
0.1.10 (2013-06-07)
Fixed issue with at_time jobs not running on the same day the job is created (Thanks to @mattss)
0.1.9 (2013-05-27)
Added schedule.next_run()
Added schedule.idle_seconds()
Args passed into do() are forwarded to the job function at call time
Increased test coverage to 100%
0.1.8 (2013-05-21)
Changed default delay_seconds for schedule.run_all() to 0 (from 60)
Increased test coverage
0.1.7 (2013-05-20)
API change: renamed schedule.run_all_jobs() to schedule.run_all()
API change: renamed schedule.run_pending_jobs() to schedule.run_pending()
API change: renamed schedule.clear_all_jobs() to schedule.clear()
Added schedule.jobs
0.1.6 (2013-05-20)
Fix packaging
README fixes
0.1.4 (2013-05-20)
API change: renamed schedule.tick() to schedule.run_pending_jobs()
Updated README and setup.py packaging
0.1.0 (2013-05-19)
Initial release
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file schedule-0.1.11.tar.gz
.
File metadata
- Download URL: schedule-0.1.11.tar.gz
- Upload date:
- Size: 6.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 |
50bb305ee83441a027b560df6170c204d4aeb0339bc52b363c882e46b1347fb8
|
|
MD5 |
6542ede1ea37dfd64f0a6d8ac80a9efa
|
|
BLAKE2b-256 |
ea5d090db0adb503ad04cf72333580f48aca694d9c96cb0e102bb33f7f8ab73d
|