How do I schedule periodic jobs in Python?

Scheduling periodic jobs in Python can be accomplished using various libraries, with two of the most popular being schedule and APScheduler. These libraries allow you to run jobs at specific time intervals or schedules easily, making it a powerful tool for automating repetitive tasks.

Using the `schedule` Library

The schedule library is a simple-to-use job scheduling library for Python. Here’s how you can use it:

import schedule import time def job(): print("Job is running...") # Schedule the job to run every 1 minute schedule.every(1).minutes.do(job) while True: schedule.run_pending() time.sleep(1)

Using the `APScheduler` Library

The APScheduler is a more robust job scheduling library that allows for more complex scheduling needs. Here’s a basic example:

from apscheduler.schedulers.blocking import BlockingScheduler def job(): print("Job is running...") scheduler = BlockingScheduler() scheduler.add_job(job, 'interval', minutes=1) try: scheduler.start() except (KeyboardInterrupt, SystemExit): pass

Python job scheduling schedule library APScheduler periodic jobs automation with Python