Skip to main content

croniter provides iteration for datetime object with cron like format

Project description

Simple example of usage is followings

>>> from croniter import croniter
>>> from datetime import datetime
>>> base = datetime(2010, 1, 25, 4, 46)
>>> iter = croniter('*/5 * * * *', base)  # every 5 minites
>>> print iter.get_next(datetime)   # 2010-01-25 04:50:00
>>> print iter.get_next(datetime)   # 2010-01-25 04:55:00
>>> print iter.get_next(datetime)   # 2010-01-25 05:00:00
>>>
>>> iter = croniter('2 4 * * mon,fri', base)  # 04:02 on every Monday and Friday
>>> print iter.get_next(datetime)   # 2010-01-26 04:02:00
>>> print iter.get_next(datetime)   # 2010-01-30 04:02:00
>>> print iter.get_next(datetime)   # 2010-02-02 04:02:00

All you need to know is constructor and get_next, these signature are following.

>>> def __init__(self, cron_format, start_time=time.time())

croniter iterate along with ‘cron_format’ from ‘start_time’. cron_format is ‘min hour day month day_of_week’, and please refer to http://en.wikipedia.org/wiki/Cron for details.

>>> def get_next(self, ret_type=float)

get_next return next time in iteration with ‘ret_type’. And ret_type accept only ‘float’ or ‘datetime’.

Now, supported get_prev method. (>= 0.2.0)

>>> base = datetime(2010, 8, 25)
>>> itr = croniter('0 0 1 * *', base)
>>> print itr.get_prev(datetime)  # 2010-08-01 00:00:00
>>> print itr.get_prev(datetime)  # 2010-07-01 00:00:00
>>> print itr.get_prev(datetime)  # 2010-06-01 00:00:00

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

croniter-0.2.7.tar.gz (6.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

croniter-0.2.7-py2.6.egg (17.3 kB view details)

Uploaded Egg

File details

Details for the file croniter-0.2.7.tar.gz.

File metadata

  • Download URL: croniter-0.2.7.tar.gz
  • Upload date:
  • Size: 6.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for croniter-0.2.7.tar.gz
Algorithm Hash digest
SHA256 744ffca9231a33260934c45b898adef008726b0d67a761c480a34364a6baa0b8
MD5 afb866f5cb00ccd1b90c3de6e2bd97af
BLAKE2b-256 af48bf20779b18efca1a0cdde293d541d5bf6f3a746267b6ddeffa8aa1c70237

See more details on using hashes here.

File details

Details for the file croniter-0.2.7-py2.6.egg.

File metadata

  • Download URL: croniter-0.2.7-py2.6.egg
  • Upload date:
  • Size: 17.3 kB
  • Tags: Egg
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for croniter-0.2.7-py2.6.egg
Algorithm Hash digest
SHA256 c3d83150576cd6d2a7c1d501a6b7ebe03819c054b8585cdf98be3acb3ef9bff7
MD5 94087628871a70358a23eb43358f20c6
BLAKE2b-256 945762bc5629f5a95dc0604963eefd40d31c2d7cfb386d553db78d127529e002

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page