応用例:「このパイプラインをスケジューリング(毎日・毎週自動実行)」
レポート生成 → PDF化 → メール送信 → クラウド共有までを一括自動化したパイプラインを、毎日・毎週自動実行できるようにスケジューリングすると、完全な「定期レポート配布システム」が完成します。
方法1: Python の schedule ライブラリを使う
import schedule
import time
def pipeline():
print("レポート生成 → PDF化 → メール送信 → クラウド共有 実行中...")
# ここに前回作成したパイプライン関数を呼び出す
# generate_report()
# convert_to_pdf()
# send_email()
# upload_to_drive()
# 毎日9時に実行
schedule.every().day.at("09:00").do(pipeline)
# 毎週月曜日の10時に実行
schedule.every().monday.at("10:00").do(pipeline)
while True:
schedule.run_pending()
time.sleep(60) # 1分ごとにチェック
Python👉 このスクリプトを常時稼働させておけば、指定した時間に自動的にパイプラインが実行されます。
方法2: OS のタスクスケジューラを使う
- Linux / macOS →
cronを利用
例: 毎日9時に実行する場合0 9 * * * /usr/bin/python3 /path/to/pipeline.py - Windows → 「タスクスケジューラ」で Python スクリプトを登録
- トリガー: 毎日 / 毎週
- アクション:
python pipeline.pyを実行
👉 OSレベルでスケジューリングすると、サーバーやPCが稼働している限り確実に実行されます。
解説ポイント
- Python内でスケジューリング →
scheduleライブラリで柔軟に制御可能。 - OSレベルでスケジューリング →
cronや Windows タスクスケジューラで安定運用。 - 組み合わせ → 開発中は
schedule、本番運用はcronやタスクスケジューラが便利。
応用の場面
- 毎日レポート配布 → 朝9時に自動生成してメール送信。
- 週次レポート配布 → 毎週月曜にクラウド共有リンクを更新。
- 定期業務の自動化 → データ更新から配布まで完全自動化。
まとめ
- パイプラインを スケジューリングすれば、完全自動の定期レポート配布が可能。
scheduleライブラリ → 開発・テストに便利。cron/ Windows タスクスケジューラ → 本番運用に最適。


