Welcome, guest | Sign In | My Account | Store | Cart

Notice! PyPM is being replaced with the ActiveState Platform, which enhances PyPM’s build and deploy capabilities. Create your free Platform account to download ActivePython or customize Python with the packages you require and get automatic updates.

Download
ActivePython
INSTALL>
pypm install croniter

How to install croniter

  1. Download and install ActivePython
  2. Open Command Prompt
  3. Type pypm install croniter
 Python 2.7Python 3.2Python 3.3
Windows (32-bit)
0.3.0
0.3.3Never BuiltWhy not?
0.3.0 Available View build log
0.2.7 Available View build log
0.2.5 Available View build log
0.2.4 Available View build log
0.2.0 Failed View build log
Windows (64-bit)
0.3.0
0.3.3Never BuiltWhy not?
0.3.0 Available View build log
0.2.7 Available View build log
0.2.5 Available View build log
0.2.4 Available View build log
0.2.0 Failed View build log
Mac OS X (10.5+)
0.3.3 Available View build log
0.3.0 Available View build log
0.2.7 Available View build log
0.2.5 Available View build log
0.2.4 Available View build log
0.2.0 Failed View build log
Linux (32-bit)
0.3.3 Available View build log
0.3.2 Available View build log
0.3.0 Available View build log
0.2.7 Available View build log
0.2.5 Available View build log
0.2.4 Available View build log
0.2.0 Failed View build log
Linux (64-bit)
0.3.3 Available View build log
0.3.2 Available View build log
0.3.0 Available View build log
0.2.7 Available View build log
0.2.5 Available View build log
0.2.4 Available View build log
0.2.0 Failed View build log
 
License
MIT License
Lastest release
version 0.3.3 on Nov 23rd, 2012

Introduction

croniter provides iteration for datetime object with cron like format.

                      _ _
  ___ _ __ ___  _ __ (_) |_ ___ _ __
 / __| '__/ _ \| '_ \| | __/ _ \ '__|
| (__| | | (_) | | | | | ||  __/ |
 \___|_|  \___/|_| |_|_|\__\___|_|

Website: https://github.com/taichino/croniter

Usage

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

Develop this package

git clone https://github.com/taichino/croniter.git
cd croniter
python bootstrap.py -d
bin/buildout -vvvvvvN
bin/test

Make a new release

We use zest.fullreleaser, a great releaser infrastructure.

Do and follow the instructions

bin/fullrelease

Contributors

Thank you to all who have contributed to this project! If you contributed and not listed below please let me know.

  • mrmachine
  • Hinnack
  • shazow
  • kiorky
  • jlsandell
  • mag009
  • djmitche
  • GreatCombinator
  • chris-baynes

Changelog

0.3.3 (2012-09-29)
  • proper packaging

Subscribe to package updates

Last updated Nov 23rd, 2012

Download Stats

Last month:2

What does the lock icon mean?

Builds marked with a lock icon are only available via PyPM to users with a current ActivePython Business Edition subscription.

Need custom builds or support?

ActivePython Enterprise Edition guarantees priority access to technical support, indemnification, expert consulting and quality-assured language builds.

Plan on re-distributing ActivePython?

Get re-distribution rights and eliminate legal risks with ActivePython OEM Edition.