Schedule Manager

https://travis-ci.org/e619003/ScheduleManager.svg?branch=master https://codecov.io/gh/e619003/ScheduleManager/branch/master/graph/badge.svg https://img.shields.io/pypi/v/schedule-manager
A thread-based task scheduler.
Schedule manager provides an easy way to schedule your jobs.

Periodic, daily, weekly, monthly or even non-periodic jobs are available for scheduling as tasks.

Quick Installation

$ pip install schedule-manager

Example

from schedule_manager import ScheduleManager
from datetime import datetime


def jobs():
    current = datetime.now().strftime("%Y-%m-%d %H:%M:%S")
    print("Working now {}".format(current))


manager = ScheduleManager()

# Schedule a periodic task: do job every 60 seconds
manager.register_task(name="task1", job=jobs).period(60).start()

# Schedule a daily task: do job at 18:00 every day
manager.register_task(name="task2",
                      job=jobs).period_day_at("18:00:00").start()

# Schedule a periodic task: start task at 21:00
manager.register_task(name="task3",
                      job=jobs).period(90).start_at("21:00:00").start()

# Schedule a non-periodic task: do job 5 times
manager.register_task(name="task4",
                      job=jobs).period(30).nonperiodic(5).start()


# Pause task1
manager.task("task1").pause()



# Stop all tasks
manager.all_tasks.stop()

License

MIT license.

See LICENSE for for more information.