Hoe krijg ik een Cron-achtige planner in Python?

| |

Ik ben op zoek naar een bibliotheek in Python die at en cron-achtige functionaliteit zal bieden.

Ik zou heel graag een pure Python-oplossing, in plaats van te vertrouwen op tools die op de doos zijn geïnstalleerd; op deze manier draai ik op machines zonder cron.

Voor degenen die niet bekend zijn met cron: je kunt taken plannen op basis van een uitdrukking als:

 0 2 * * 7 /usr/bin/run-backup # voer de back-ups uit om 0200 op elke zondag 0 9-17/2 * * 1-5 /usr/bin/purge-temps # voer de opdracht purge temps uit, elke 2 uur van maandag t/m vrijdag tussen 9.00 en 17.00 uur. 

De syntaxis van de cron-tijdexpressie is minder belangrijk, maar ik zou graag iets hebben met dit soort flexibiliteit.

Als er niet iets is dat dit out-the-box voor mij doet, worden alle suggesties voor de bouwstenen om zoiets te maken dankbaar ontvangen.

Bewerken Ik ben niet geïnteresseerd in het starten van processen, alleen "jobs" die ook zijn geschreven in Python - python-functies. Noodgedwongen denk ik dat dit een andere thread zou zijn, maar niet in een ander proces.

Hiervoor zoek ik de expressiviteit van de cron-time-expressie, maar dan in Python.

Cron bestaat al jaren, maar ik probeer zo draagbaar mogelijk te zijn. Ik kan niet vertrouwen op zijn aanwezigheid.