01

Sample Code

weekly-recurrence.py
from psp.platform.recurrence import (
    RecurrenceEngine, RecurrenceSpec, Frequency, Weekday
)

engine = RecurrenceEngine()
spec = RecurrenceSpec(
    freq=Frequency.WEEKLY,
    byday=(Weekday.MO, Weekday.WE, Weekday.FR),
)

# Monday June 10, 2024
start = datetime(2024, 6, 10, 9, 0, tzinfo=UTC)
dates = engine.occurrences(spec, dtstart=start, count=6)
# [Jun 10 Mon, Jun 12 Wed, Jun 14 Fri, Jun 17 Mon, Jun 19 Wed, Jun 21 Fri]