😀
リアルタイム地球画像をデスクトップに表示
概要
壁紙にリアルタイムの地球画像を表示する話。
引用元:himawaripy
提供:情報通信研究機構(NICT)
動作確認環境は以下。
- OS: Ubuntu 18.04
- ディスプレイ: QHD (2560x1440)、Display Port
- Python 3.6.9
設定方法
himawaripy公式ドキュメント に従って設定する。
インストール
pipコマンドでhimawaripyをインストールする。
$ pip3 install himawaripy
$ pip3 freeze | grep himawari
himawaripy==2.1.0
動作確認
動作確認をする。コマンドを実行すると、
$ himawaripy --auto-offset
himawaripy 2.1.0
Updating...
Latest version: 2020/07/12 00:40:00 GMT.
Detected offset: UTC+09:00
Offset version: 2020/07/11 23:40:00 GMT.
Downloading tiles...
Downloading tiles: 1/64 completed...
...
...
Downloading tiles: 63/64 completed...
Downloading tiles: completed.
Saving to '~/.cache/himawaripy/himawari-20200711T234000.png'...
デスクトップに地球画像が表示された。
提供:情報通信研究機構(NICT)
表示された画像はホームのキャッシュディレクトリに作成されている。
$ ll ~/.cache/himawaripy/
合計 22M
-rw-rw-r-- 1 kannkyo kannkyo 22M 7月 12 10:30 himawari-20200712T000000.png
himawaripyは、コマンドを実行するたびに以下の処理を自動で行ってくれる。
- 新しい画像をダウンロード
- .cacheから古い地球画像を削除
- 新しい地球画像を格納
- 壁紙を更新
つまり、コマンドを定期的に叩けば最新の地球画像に更新できる。定期的に叩くのは、crontabを使えば簡単に実現できる。
自動化
crontabを使って壁紙の更新を自動化する。
まず、which
コマンドを使って、himawaripyのインストール先のディレクトリを調べる。
$ which -- himawaripy
~/.local/bin/himawaripy
筆者の環境では、.localにインストールされていた。
次にcrontabの設定ファイルを編集モード-e
で開く。
crontab -e
最後にcrontabに以下の1行を追加する。
*/10 * * * * <INSTALLATION_PATH> --auto-offset -l 8 -d 2
それぞれのパラメータの意味は以下の通りである。
-
*/10 * * * *
10分おきにコマンドを実行。画像提供元(ひまわりリアルタイムWeb)は、約20分遅れで10分おきに画像を公開しているので、10分おきにコマンドを実行すれば良い。 -
<INSTALLATION_PATH>
himawaripyのインストール先の絶対パス。 -
--auto-offset
UTCからのオフセット時刻を自動算出。 -
-l 8
解像度のレベルを8(画像サイズは4400 x 4400、サイズは約20MB)に設定。 -
-d 2
ダウンロード処理のタイムアウト時間を2分に設定。
これでOK。
Discussion