LoginSignup
5
4

More than 5 years have passed since last update.

平日だけcron実行するのにproxy越しでjpholidayp使ってみた

Posted at

平日だけcron動かしたときにjpholidaypという便利なものがあるそうで。

使い方や説明については以下がわかりやすかったので参考に。
cronで祝日判定しようと思ったら,emasaka/jpholidaypが素晴らしかった

ただ、jpholidaypは実行時に外のカレンダーを見に行ってて、
諸事情でproxy越しじゃないと外に出られないのでちょっとコードいじってみた。

49行目と50行目の間に4行ほど足してみる。


        else:
            # ここから
            proxy = {"http":"hoge-proxy:80"}
            proxy_handler = urllib2.ProxyHandler(proxy)
            opener = urllib2.build_opener(proxy_handler)
            urllib2.install_opener(opener)
            # ここまで
            res = urllib2.urlopen(self.URL)
            dat = yaml.load(res)
            cache.set({"holiday_jp": dat})
        self.holiday_jp = dat

参考:
プロキシ環境下でpythonのurllib2で作ったクローラをcronで定期的に実行するときのメモ - moguranosenshi

これでcronにそのまま、


0 09 * * 1-5 /home/hoge/jpholidayp || /home/hoge/batch

とかやると月曜から金曜かつ祝日を除いた日に実行できるので、
めでたしめでたし。

(しかし会社とか学校とか組織固有の休みが有る場合には当然知るすべはなく、
その組織用の祝日apiとか提供して欲しくなるなとしみじみ)

5
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
4