目次

    これまでのあらすじ


    月末の定期連絡を自動化してしまいたいという野望を胸にPythonをいじりだした筆者。
    まずはPythonからSlackに投稿するプログラムを作成した。

    その後、指定したタイミングで自動的に投稿するようにする処理を追加。

    しかし、まだ課題は残されていた。
    1. いちいちターミナル開いてコマンド打たないといけない
    2. 最終週の月曜日ってどうやって指定したらいいの?
    はたして、この2つを解決することはできるのか…!


    cronを使おう


    先程あげた2つの課題ですが、一気に解決できそうな手段がありました。
    それがcronです。

    cronについては調べてみてください。と赤さんが圧をかけてきています。


    さっそく処理を考えていきましょう。

    Python

    まず、Pythonのファイルの方で曜日を指定します。
    今回は月曜日。


    schedule.every().monday.do(job)


    cron

    次にcrontabで他の要素を設定します


    crontab -e

    で編集画面を開いて


    0 18 21-27 * * hogehoge/script.py


    cronは、左端から「分」「時」「日」「月」「曜日」「実行内容」と設定することになっています
    ここでのミソは「日」の設定です。
    今回は第4月曜日に実行してほしいので、第4月曜日になる日付の範囲を絞り込み、記載しました。

    こう書くことで、毎月21~27日の18時になるとプログラムが実行され、更に月曜日だった場合は処理が走るという寸法です。


    果報は寝て待て

    これで、月末月曜日の18時になれば自動的にメッセージが飛ぶはず…ウッシッシ
    月末が楽しみですな!!

    〜完〜
    …になるのか?
    PREV
    2022.07.11
    【jQuery】うるう年判定付き生年月日フォームの作り方
    NEXT
    2022.08.01
    Zustandを使ってみた