気象衛星画像の一括取得

顕著現象が発生した時の衛星画像やレーダーエコーを動画で見ることで、雲がどのように発生したかを解析することができます。

今回はExcel VBAとフリーのツールを組み合わせることで、日時を指定して画像を一括ダウンロードする方法をまとめてみました。

動画の完成まで3ステップを踏みますが、3分ほどの作業で完了します。

以下では赤外の衛星画像を例に説明しますが、可視・水蒸気の衛星画像やレーダーエコーの画像も同様にできます。

【利用環境】

macOS 10.13.6

URLcollector for Mac

 

概要

 

動画を作成したい時刻(開始、終了)を指定して、気象庁のサーバーに保存されている画像ファイルをダウンロードします。

ダウンロードした画像ファイルをパラパラ漫画の要領で動画にして完成です。

 

①URLリストの作成

保存されている画像のファイル名には日時が含まれているので、ダウンロードしたい時刻を全て含んだファイルのリストを作成します。

例)2020年6月8日10時00分〜10時10分のファイルをダウンロードする場合

http://www.jma.go.jp/jp/gms/imgs/0/infrared/1/202006081000-00.png
http://www.jma.go.jp/jp/gms/imgs/0/infrared/1/202006081010-00.png

 

動画を作成したい時間帯のファイル名を自動生成するのには、ExcelのVBAを利用します。

衛星画像は10分間隔、レーダーエコーは5分間隔でファイルが生成されるので、VBAもそのように作り込みます。

 

②画像ファイルのダウンロード

気象庁ホームページから画像を一括ダウンロードするのに、フリーソフトのURLcollectorを利用します。複数のURLを指定すると、逐次そのページにアクセスしてファイルをダウンロードしてくれます。

 

③動画の作成

Macに付属されているiMovieを利用して、画像ファイルから動画を作成します。

 

プログラムを作る

 

事前準備をしておく

VBAを使える状態にしておく

ExcelでVBAを初めて利用する場合は、開発タブを表示する設定にしておきます。

設定は簡単です。やり方が分からない方は、ウェブ検索すればたくさん見つかります。

 

エクセルのワークシートを用意する

ワークシートを2枚作成して、名前をつけておきます。1枚目は「登録」、2枚目は「satellite_workinglist」としてください。

1枚目のワークシート 「登録」

ダウンロードするファイルの開始日時と終了日時を登録するのに用います。
名称は「登録」でなくても、何でも構いません。

2枚目のシート 「satellite_workinglist」

ファイル名のリストを自動生成する過程で使用します。パソコンが作業用に使いシートであり、最終出力はこれとは別のシートに出力します。
プログラム中で使用しているので、スペルを間違わないようにしてください。

 

URLcollector for Macをダウンロードする

次に、URLcollectorダウンロードをしておきましょう。

http://solidbluesky.com/urlcollector.html

 

VBAでダウンロードリストを作成するプログラムを作成する

「エディター」をクリックします。

「Sheet1(Sheet1)」をクリックします。

白い画面が開いたら、以下をコピー&ペーストします。

 
Sub 赤外画像一括取得()

Dim kaishi As Date, shuuryou As Date
Dim book1 As Workbook

kaishi = Range("B1").Value
shuuryou = Range("B2").Value
i = 0
j = 1


Do While dt <> shuuryou

    dt = DateAdd("n", i, kaishi)

    s = Format(dt, "yyyymmddhhmm")

    Sheets("satellite_workinglist").Range("A" & j).Value = "http://www.jma.go.jp/jp/gms/imgs/0/infrared/1/" & s & "-00.png"
    

    i = i + 10
    j = j + 1

Loop

Sheets("satellite_workinglist").Copy
ActiveWorkbook.SaveAs "衛星画像(赤外)" & ".csv", FileFormat:=xlCSV

ActiveWorkbook.Close

Worksheets("satellite_workinglist").Cells.Clear

MsgBox "完了しました"


End Sub

Sub 可視画像一括取得()


Dim kaishi As Date, shuuryou As Date
Dim book1 As Workbook

kaishi = Range("B1").Value
shuuryou = Range("B2").Value
i = 0
j = 1


Do While dt <> shuuryou

    dt = DateAdd("n", i, kaishi)

    s = Format(dt, "yyyymmddhhmm")

    Sheets("satellite_workinglist").Range("A" & j).Value = "http://www.jma.go.jp/jp/gms/imgs/0/visible/1/" & s & "-00.png"

    i = i + 10
    j = j + 1

Loop

Sheets("satellite_workinglist").Copy
ActiveWorkbook.SaveAs "衛星画像(可視)" & ".csv", FileFormat:=xlCSV

ActiveWorkbook.Close

Worksheets("satellite_workinglist").Cells.Clear

MsgBox "完了しました"

End Sub



Sub 水蒸気画像一括取得()



Dim kaishi As Date, shuuryou As Date
Dim book1 As Workbook

kaishi = Range("B1").Value
shuuryou = Range("B2").Value
i = 0
j = 1


Do While dt <> shuuryou

    dt = DateAdd("n", i, kaishi)

    s = Format(dt, "yyyymmddhhmm")

    Sheets("satellite_workinglist").Range("A" & j).Value = "http://www.jma.go.jp/jp/gms/imgs/0/watervapor/1/" & s & "-00.png"

    i = i + 10
    j = j + 1

Loop

Sheets("satellite_workinglist").Copy
ActiveWorkbook.SaveAs "衛星画像(水蒸気)" & ".csv", FileFormat:=xlCSV

ActiveWorkbook.Close

Worksheets("satellite_workinglist").Cells.Clear

MsgBox "完了しました"

End Sub
 

 

登録画面を作成する

ダウンロードする開始と終了の日時を指定するための登録画面を作成します。
開始日時はB1セルに、終了日時はB2セルに登録するように作ります。

「赤外」「可視」「水蒸気」別にプログラムを3つ作ったので、ボタンも3つ用意します。

ボタンの作り方はネット検索してみてください。

 

使ってみよう

 

①開始・終了日時を登録する

例として、2020年6月21日の08時00分から09時00分までの赤外画像をダウンロードします。

日付は「2020/06/21」のように月日は2桁で、時刻は「08:00」のように24時間で、時と分をコロンで挟んでください。

日時を登録したら、「衛星画像(赤外」」ボタンを押します。

 

②ファイル名の一覧が作成される

「衛星画像(赤外)」というcsvファイルが作成されます。7つのURLが記入されています。

③URLcollectorでファイル抽出する

URLcollectorを立ち上げたら、「URL抽出」>「ファイルから抽出…」を選択します。

 

 

ウィンドウが開いたら、②で作成した「衛星画像(赤外)」を選びます。

 

④URLリストを登録する

URL Extractorというウィンドウが開き、URLのリストが転記されます。

メニュバーの中央ほどにある矢印型のアイコン(「URLリストをダウンロードリストへ登録します」と表示される)をクリックして、URLリストを登録します。

⑤ダウンロードを開始する

MultiDownloaderというウィンドウが開くので、ダウンロードを押します。

すべての状態「待機」から「完了」になればダウンロード完了です。

⑥画像ファイルを確認する

フォルダーのアイコンを押します。

画像ファイルが7枚、収納されました。

あとはiMovieを使って動画にするだけです。

iMovieの使い方は「iMovie、パラパラ動画」で検索すれば見つかります。

この要領で作成した動画を最後に添付します。これは2020年6月6日に、埼玉県熊谷市で10分間に50.0ミリの降水量(歴代1位タイ)があった時のレーダーエコーです。

 

 

 

 

最後に

自分も今回、初めてExcel VBAをいじってみました。ネットで調べながら作ってみましたが、もっとうまいやり方があるのかもしれません。

なお、気象衛星の画像ファイルは、気象庁のサーバーに約5日間保存されます。

サーバーに負荷をかけないように、顕著現象が発生した直後の一括ダウンロードは避けるようにしましょう。

 

コメントを残す

メールアドレスが公開されることはありません。

CAPTCHA