2024-03-27
ちょっとずつ作るハピラインふくい応援アプリ!駅マップと運賃計算ができました。


「駅マップ - ハピラインふくい」
src on GitHub
まずは基本となる駅データを揃えます。公式サイトの駅情報からスクレイピングして、データ収集。緯度経度データがなかったので、GeoCodingAPIで緯度経度を取得し合成し、拡張タグcsv-mapとcsv-viewerで表示!


PDFデータから地道に作成したCSVデータ。これを読み込んで運賃計算するライブラリ HapilineFare.js を作成。fare(フィアー)とは運賃のこと。テストコードを書いて、動作確認。 import * as t from "https://deno.land/std/testing/asserts.ts"; import { HapilineFare } from "./HapilineFare.js"; const fare = await HapilineFare.create(); Deno.test("simple", () => { t.assertEquals(fare.getFare("鯖江", "武生"), 220); t.assertEquals(fare.getFare("鯖江", "敦賀"), 890); }); Deno.test("reverse", () => { t.assertEquals(fare.getFare("鯖江", "福井"), 280); t.assertEquals(fare.getFare("鯖江", "北鯖江"), 220); t.assertEquals(fare.getFare("敦賀", "鯖江"), 890); }); Deno.test("same", () => { t.assertEquals(fare.getFare("鯖江", "鯖江"), null); }); Deno.test("illegal", () => { t.assertEquals(fare.getFare("鯖江", "東京"), null); }); ちゃんと計算できました。


「発車カウントダウン - ハピラインふくい」
src on GitHub
運賃表示と、駅のよみ、駅の詳細データへのリンクを加えました。

データ整備は地味な作業ですが、楽しいアプリづくりに必要なステップ!
公式オープンデータが充実すると、すぐに楽しいアプリに取りかかることができるのがうれしいところ!

函館市電で、IchigoJamで動く、いちごロケによるリアルタイム位置情報提供サービスが本格稼働開始!

Tweet
クリエイティブ・コモンズ・ライセンス
本ブログの記事や写真は「Creative Commons — CC BY 4.0」の下に提供します。記事内で紹介するプログラムや作品は、それぞれに記載されたライセンスを参照ください。
CC BY / @taisukef / アイコン画像 / プロフィール画像 / 「一日一創」画像 / RSS