解析crontab风格的行
我需要在Python中解析一个类似于crontab的时间表定义,比如说“00 3 * * *”,并找出这个时间表上最后一次应该运行的时间。
有没有什么好的(最好是小巧的)库可以解析这些字符串,并把它们转换成日期呢?
2 个回答
2
也许你可以试试这个模块:
http://code.activestate.com/recipes/577466-cron-like-triggers/
我用这个模块在Python中做了一个用户空间的定时任务,它运行得非常好。这个模块可以处理类似于crontab的格式。
83
也许这个Python包 croniter 能满足你的需求。
使用示例:
>>> import croniter
>>> import datetime
>>> now = datetime.datetime.now()
>>> cron = croniter.croniter('45 17 */2 * *', now)
>>> cron.get_next(datetime.datetime)
datetime.datetime(2011, 9, 14, 17, 45)
>>> cron.get_next(datetime.datetime)
datetime.datetime(2011, 9, 16, 17, 45)
>>> cron.get_next(datetime.datetime)
datetime.datetime(2011, 9, 18, 17, 45)