Github: https://github.com/agronholm/apscheduler
高度なPythonスケジューラ(APScheduler)はPythonのライブラリで、後で実行されるPythonコードを1回または定期的にスケジュールすることができます。 新しいジョブを追加したり、古いジョブを削除したりすることができます。 ジョブをデータベースに格納すると、スケジューラーの再起動後もその状態を維持したまま存続します。 スケジューラが再起動されると、スケジューラはオフラインの間に実行していたはずのすべてのジョブを実行します[1] 。
とりわけ、APSchedulerは、cronデーモンやWindowsのタスクスケジューラなどのプラットフォーム固有のスケジューラに、クロスプラットフォーム、アプリケーション固有の置き換えとして使用できます。 ただし、APSchedulerはデーモンやサービス自体ではなく 、コマンドラインツールも付属していません。 これは、主に既存のアプリケーション内で実行されることを意図しています。 つまり、APSchedulerは、スケジューラーサービスを構築したり、専用スケジューラープロセスを実行するためのビルディングブロックを提供しています。
APSchedulerには3つの組み込みスケジューリングシステムがあります:
- Cronスタイルのスケジューリング(オプションの開始/終了時間を使用)
- 間隔ベースの実行(オプションの開始/終了時間を使用して均等間隔でジョブを実行)
- 一回限りの遅延実行(設定された日時にジョブを1回実行)
スケジューリングシステムとバックエンドを組み合わせて、ジョブが好きなように格納されます。 ジョブを保存するためにサポートされているバックエンドには、
- メモリ
- SQLAlchemy ( SQLAlchemyでサポートされているRDBMS)
- MongoDB
- レディス
- RethinkDB
- ZooKeeper
APSchedulerは、次のようないくつかの一般的なPythonフレームワークとも統合します。
[1] | このためのカットオフ期間も設定可能です。 |
ドキュメンテーション
ドキュメントはここにあります 。
ソース
ソースはGithubでブラウズできます。
バグの報告
バグトラッカーはGithubによって提供されています。
ヘルプの利用
問題やその他の質問がある場合は、次のいずれかを行うことができます。
- Gitterのapschedulerの部屋に尋ねる
- APScheduler Googleグループに問い合わせるか、
- StackOverflowで質問し、あなたの質問に
apscheduler
タグを付ける