views:

493

answers:

4

All. I am trying to find a python module that I can use to parse a cron entry and get the next time it will run. With perl I use the Schedule::Cron::Events module but I would like to convert to python. Thanks in advance.

+1  A: 

Take a look at http://pypi.python.org/pypi/python-crontab/0.9.2

Uh Clem
A: 

Thanks for your answers guys. Is there any documentation for this module?

Brad
there are examples in crontab.py
gnibbler
+3  A: 

The documentation for python-crontab is in docstrings in the source code, as is usual for python. You can also explore the documentation via the python interpreter with the built-in help() function. The full source for python-crontab is less than 500 lines anyway and is very readable.

Example from the source code:

from crontab import CronTab

tab = CronTab()
cron = tab.new(command='/usr/bin/echo')

cron.minute().during(5,50).every(5)
cron.hour().every(4)

cron2 = tab.new(command='/foo/bar',comment='SomeID')
cron2.every_reboot()

list = tab.find('bar')
cron3 = list[0]
cron3.clear()
cron3.minute().every(1)

print unicode(tab.render())

for cron4 in tab.find('echo'):
    print cron4

for cron5 in tab:
    print cron5

tab.remove_all('echo')

t.write()

P.S. Please remember to add comments or edit your question, when appropriate, instead of adding an answer - your 'answer' is not technically an answer.

brianpeiris
A: 

I could be wrong but doesn't python crontab offer ways to read and write to crontab but nothing regarding parsing the crontab to determine the time until the next time a job will be run? Does anybody know of such a script/module?

erwin