ノートパソコンをUbuntuにしたので、Ubuntuでいろいろやってみる。ノートPCのほうが消費電力少なそうなので、常時運用にはこっちのほうがいいのか、なんて思っている。
簡単なスクリプトなら、Raspberry Piで十分だけども持ってないので。
# -*- coding: utf-8 -*- """ Spyder Editor This is a temporary script file. """ import urllib3 import datetime import os diff_day = 1 #if yester day, 1 root_url = "http://www.jma.go.jp/jp/radnowc/imgs/radar/" area_codes = ["000","201","202","203","204","205","206","207","208","209","210","211","212","213","214","215","216","217","218","219"] hour_list = ["00","01","02","03","04","05","06","07","08","09","10","11","12","13","14","15","16","17","18","19","20","21","22","23"] min_list = ["00","05","10","15","20","25","30","35","40","45","50","55"] def download(url, file_name): connection_pool = urllib3.PoolManager() resp = connection_pool.request('GET', url) f = open(file_name,'wb') f.write(resp.data) f.close resp.release_conn() now = datetime.date.today().strftime("%Y%m%d") yesterday = datetime.date.today() - datetime.timedelta(days=diff_day) print(yesterday.strftime("%Y%m%d")) i=0 download("http://www.jma.go.jp/jp/radnowc/imgs/radar/210/202008081425-00.png","testtest.png") for areas in area_codes: new_path = areas +"/" + yesterday.strftime("%m%d") if not os.path.isdir(new_path): print(new_path) os.makedirs(new_path) for hours in hour_list: for mins in min_list: i += 1; for areas in area_codes: url = root_url + areas +"/" + yesterday.strftime("%Y%m%d")+ hours + mins + "-00.png" print(url) print(areas +"/" + yesterday.strftime("%m%d") + "/{:04d}".format(i)) download(url, areas +"/" + yesterday.strftime("%m%d") + "/{:04d}".format(i)+".png")
上記のコードを作って保存しておく。とりあえず名前はradar.pyとしておく。
で、定期的に
python radar.py
を実行できればよい。ただ、上記で実行すると、ルートフォルダ以下に作ってしまうので、次のようにディレクトリを移動してから実施というようなプログラムが必要。次の内容をradar.bhとでもしておいて
#! /bin/bash
cd /home/username/radar
python3 radar.py
cd /home/username/radar
python3 radar.py
hoge
crontab -eで
1 0 * * * radar.bh
などと登録するとよい。Gnu nanoで編集するとき、^Xなどの表示があるが、何だろうとおもったら、^XはEsc Esc xの順番にキーボードを叩けばいいらしい。文字入力と制御を切り替えるエスケープがEsc Escなんだろう、きっと。