Il semble qu'il existe une chose pratique appelée jpholidayp lorsque cron est exécuté uniquement en semaine.
Pour l'utilisation et l'explication, ce qui suit était facile à comprendre, veuillez donc vous y référer. Emasaka / jpholidayp était génial quand j'ai essayé de juger des vacances avec cron
Cependant, jpholidayp est allé voir le calendrier extérieur au moment de l'exécution, Pour diverses raisons, je ne peux pas sortir sans passer par le proxy, alors j'ai un peu joué avec le code.
Ajoutez environ 4 lignes entre les 49e et 50e lignes.
else:
#d'ici
proxy = {"http":"hoge-proxy:80"}
proxy_handler = urllib2.ProxyHandler(proxy)
opener = urllib2.build_opener(proxy_handler)
urllib2.install_opener(opener)
#Jusque là
res = urllib2.urlopen(self.URL)
dat = yaml.load(res)
cache.set({"holiday_jp": dat})
self.holiday_jp = dat
référence: [Remarque lors de l'exécution d'un robot créé avec python urllib2 dans un environnement proxy régulièrement avec cron --moguranosenshi](http://moguranosenshi.hatenablog.com/entry/2013/10/16/%E3%83% 97% E3% 83% AD% E3% 82% AD% E3% 82% B7% E7% 92% B0% E5% A2% 83% E4% B8% 8B% E3% 81% A7python% E3% 81% AEurllib2% E3% 81% A7% E4% BD% 9C% E3% 81% A3% E3% 81% 9F% E3% 82% AF% E3% 83% AD% E3% 83% BC% E3% 83% A9% E3% 82% 92cron% E3% 81% A7)
Maintenant dans cron tel qu'il est
0 09 * * 1-5 /home/hoge/jpholidayp || /home/hoge/batch
Si vous le faites, vous pouvez le faire du lundi au vendredi et les jours autres que les jours fériés, donc Je suis heureux.
(Mais bien sûr, il n'y a aucun moyen de savoir s'il y a des vacances d'entreprise, d'école ou d'organisation. Je ne veux pas que je fournisse une API de vacances pour cette organisation)
Recommended Posts