過去に作ったレシピに手を加えました.
※価格は記事執筆時のものです. 現在の価格はApp Storeから確認ください.
レビュー時のiOSバージョン : iOS16.5
スポンサーリンク
過去のレシピ
当時は正規表現をはじめいくつかの知識に乏しかったため無駄な部分の多いレシピでした.
折角なので気象庁のデータも入れようとしたのですが、どうやらサイトリニューアルでスクレイピングができなくなったようです.
現在はXMLとして提供されており、ここから取り出すしかありません.
ただそのままjsonに置き換えることができなかったため、結果の羅列から取り出すというある意味でのスクレイピングを行うこととなりました.
ダウンロードと使い方
今回はRoutinehubにアップせずそのままです.
https://www.metoc.navy.mil/jtwc/jtwc.html
まずはJTWC、合同台風警報センターにアクセスします.
現在発生中の台風が存在する場合、地図に赤文字の矢印と名前が書かれています(色によって段階があります)。
対応する台風の情報がページ右側にあるのでそのうち「TC Warning Text」か「TC Warning Graphic」のリンクへ進みます.
ページURLに数字が含まれているので、これをコピーするか覚えておきます.
ダウンロードしたレシピの編集画面を開き、先頭にある「辞書」アクションを編集します.
- 台風n号:台風の号数を入力します.
- wp:上でコピーまたは覚えておいた数字を入れます.
該当しない数字を入れると結果は表示されません. - 初期発表年月:台風が発生した年と月を半角スラッシュで挟んだものを入れます.
- Name:本レシピの名前です. 特に弄っても問題はありません.
- version:本レシピのバージョンです. 同上.
- Author:レシピの作者名です. 同上.
編集を終えたら実行します.
特に問題がなければ画像のようになります.
レシピ作成でのあれこれ
本来であれば「先頭」から必要な行数を取得して必要な項目を取り出すんですが、一つ目は「実況」であり、二つ目以降は「予報」であることにより、中心位置の情報の上に予報円の範囲(海里、キロ)の2項目(水色で囲んだ部分)が追加されます.
そのため単純に上から何番目…と取り出すと確実にズレてしまいます.
なのでそれを回避するために「風」とある項目を基準に、その1行前(中心気圧)と後ろ4行(最大風速と最大瞬間風速、それぞれktとm/s)を取り出して処理しています.
「風」の項目前後に余計な情報が入ったり順序が入れ替わる仕様でない限りこれで問題ないはず.
〆
可能なら気象庁のデータとJTWCのデータを同じテーブルに合わせたいのですが、予報時刻が被らないケースがあるため諦めました.
(参考)
ぱふう家のホームページ:https://www.pahoo.org/e-soul/webtech/php05/php05-15-01.shtm
Joint Typhoon Warning Center:https://www.metoc.navy.mil/jtwc/jtwc.html