croniter

6.2.2 · active · verified Sat Mar 28

croniter is a Python library that provides iteration capabilities for `datetime` objects based on cron-like formats. It allows generating future or past occurrences matching a given cron expression. The current version is 6.2.2, released on March 15, 2026. While it experienced a period of abandonment, it is now actively maintained by the Pallets-Eco organization.

Warnings

Install

Imports

Quickstart

Demonstrates creating a croniter object and retrieving the next matching datetime. It also shows the `day_or` parameter for 'AND' logic between day-of-month and day-of-week fields.

from datetime import datetime
from croniter import croniter

# Example 1: Every 5 minutes
base = datetime(2010, 1, 25, 4, 46)
iter_5min = croniter('*/5 * * * *', base)
print(f"Next occurrence (every 5 min): {iter_5min.get_next(datetime)}")

# Example 2: Every Monday and Friday at 04:02
base = datetime.now()
iter_mf = croniter('2 4 * * mon,fri', base)
print(f"Next occurrence (Mon/Fri 04:02): {iter_mf.get_next(datetime)}")

# Example 3: First day of the month AND a Wednesday
# (using day_or=False for AND logic, like fcron)
base = datetime.now()
iter_and = croniter('2 4 1 * wed', base, day_or=False)
print(f"Next occurrence (1st day AND Wed 04:02): {iter_and.get_next(datetime)}")

view raw JSON →