[解決済み] Pythonスクリプトを1時間ごとに正確に実行するスケジューリング
2023-07-13 19:22:57
質問
質問する前に Cronジョブおよびタスクスケジューラ このスクリプトは Windows と Linux で使用されるため、エンド ユーザーが完了するのを待つよりも、これを行うコード化されたメソッドを持つことを好みます。
タスクをスケジュールするために使用できる Python 用のライブラリはありますか? 私は 1 時間に 1 回関数を実行する必要がありますが、1 時間に 1 回スクリプトを実行して .sleep を使用すると、スクリプトや関数の実行に固有の遅延のために、時間の経過とともに前日とは異なる時間に 1 時間に 1 回実行されることになります。
とは何ですか? ベスト 関数を一日の特定の時間に実行するようにスケジュールする方法(1回以上) なしで Cron JobやTask Schedulerでスケジューリングすることなく?
あるいは、これが可能でない場合、私はあなたの意見も欲しいです。
AP Schedulerは私のニーズにぴったりでした。
バージョン 3.0
import datetime
import time
from apscheduler.scheduler import Scheduler
# Start the scheduler
sched = Scheduler()
sched.daemonic = False
sched.start()
def job_function():
print("Hello World")
print(datetime.datetime.now())
time.sleep(20)
# Schedules job_function to be run once each minute
sched.add_cron_job(job_function, minute='0-59')
を出す。
>Hello World
>2014-03-28 09:44:00.016.492
>Hello World
>2014-03-28 09:45:00.0.14110
バージョン3.0
(以下、Animesh Pandeyの回答より)
from apscheduler.schedulers.blocking import BlockingScheduler
sched = BlockingScheduler()
@sched.scheduled_job('interval', seconds=10)
def timed_job():
print('This job is run every 10 seconds.')
@sched.scheduled_job('cron', day_of_week='mon-fri', hour=10)
def scheduled_job():
print('This job is run every weekday at 10am.')
sched.configure(options_from_ini_file)
sched.start()
どのように解決するのですか?
多分これは助けることができる。 高度なPythonスケジューラ
これは彼らのドキュメントにある小さなコードの一部です。
from apscheduler.schedulers.blocking import BlockingScheduler
def some_job():
print "Decorated job"
scheduler = BlockingScheduler()
scheduler.add_job(some_job, 'interval', hours=1)
scheduler.start()
関連
-
[解決済み] AndroidでPythonを実行する方法はありますか?
-
[解決済み] Pythonスクリプトのプロファイリングはどのように行うのですか?
-
[解決済み] スクリプトを実行しているPythonのバージョンを確認するにはどうしたらいいですか?
-
[解決済み] Pandasのデータフレームでタプルの列を分割するにはどうしたらいいですか?
-
[解決済み] SQLAlchemy: セッションの作成と再利用
-
[解決済み] SQLAlchemy: 日付フィールドをフィルタリングする方法は?
-
[解決済み] Pythonで0xを使わずにhex()を使うには?
-
[解決済み] Django 1.7で初期マイグレーションからマイグレートバックする方法は?
-
[解決済み] Pythonで、ウェブサイトが404か200かを確認するためにurllibをどのように使用しますか?
-
[解決済み] Pythonでリストが空かどうかをチェックする方法は?重複
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] n秒ごとに特定のコードを実行する [重複]。
-
[解決済み] Pythonのマルチプロセッシングプールimap_unorderedの呼び出しの進捗を表示しますか?
-
[解決済み] Pythonでコード行間にかかる時間を測定するには?
-
[解決済み] SQLAlchemy: 日付フィールドをフィルタリングする方法は?
-
[解決済み] PyQtアプリケーションのスレッド化。QtスレッドとPythonスレッドのどちらを使うか?
-
[解決済み] Celeryタスクのユニットテストはどのように行うのですか?
-
[解決済み] Pandasのデータフレーム内の文字列を'date'データ型に変換するにはどうしたらいいですか?
-
[解決済み] Pythonで、ウェブサイトが404か200かを確認するためにurllibをどのように使用しますか?
-
[解決済み] Pythonでファイルの読み込みと上書きをする
-
[解決済み] PythonのRequestsモジュールを使ってWebサイトに "ログイン "するには?