A small tool for processing crontab syntax
Project description
Cronparse
A simple tool for testing crontab like syntax.
Usage
>>> from cronparse import Cron
>>> c = Cron('*/5 * * * 0') # Matches only on Mondays, every 5th minute
>>> from datetime import datetime
>>> d = datetime(2020, 4, 13, 11, 5)
>>> c.matches(d)
True
>>> d = d.replace(minute=6)
>>> c.matches(d)
False
>>> d = d.replace(day=14, minute=5)
>>> c.matches(d)
False
>>> c.why(d) # Ask which fragment of the rule did not match
[True, True, True, True, False]
crontab rule syntax
Supported syntax:
- * - match any value
- 1 - match exact value
- */5 - match every 5th value
- 1,3,4 - match values from list
- 1-3 - match values in a range
- 1-3,7,*/2 - combinations!
- @yearly, @annually, @monthly, @weekly, @daily, @midnight, @hourly
Unsupported syntax:
- Day names
- Month names
- @reboot
Timezone Support
Optionally, you can pass a datetime.tzinfo
as the second argument. It
defaults to datetime.timezone.utc
.
Any datetime
passed for testing will first be moved to that timezone.
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
cronparse-0.3.0.tar.gz
(2.6 kB
view details)
Built Distribution
File details
Details for the file cronparse-0.3.0.tar.gz
.
File metadata
- Download URL: cronparse-0.3.0.tar.gz
- Upload date:
- Size: 2.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/44.0.0 requests-toolbelt/0.8.0 tqdm/4.43.0 CPython/3.8.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | cddb98da53e49aa3d3322c881b8b422f21b3ce41eea0cc29f59387ccbd3c6479 |
|
MD5 | 4a72998022ce291c3854ee38f0875353 |
|
BLAKE2b-256 | fc0d8bd360927b4794fc2151396bebbb9cc6e28472776505ae1a248a5bd2e951 |
File details
Details for the file cronparse-0.3.0-py3-none-any.whl
.
File metadata
- Download URL: cronparse-0.3.0-py3-none-any.whl
- Upload date:
- Size: 2.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/44.0.0 requests-toolbelt/0.8.0 tqdm/4.43.0 CPython/3.8.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 10ab288b97055545f3570811c454458f70312945bda10c7378a5457a2cca8c79 |
|
MD5 | ad916902462535ef5c900544ad279cfc |
|
BLAKE2b-256 | 1fc5594340c4650734fd5ba4b8db87714271e0e6241327e6fd4a34becb9cdf3a |