アイプラスワンの管理画面

2025年07月09日

この画面は、アイプラスワンの管理画面です。ん?何を管理しているのだといえば、公開している法人データ562万件や、路線、駅、列車、駅長など、ありとあらゆるデータベース管理しているデータたちの司令塔になっています。一覧検索、登録、編集、削除ができるようになっていますし、運用上必要な機能をつめこんでいます。

ようやく登録が完了した列車をどのように登録していったのか紹介しましょう。

路線は、約600あります。最初は、1路線ごとに走っている列車をすべてイラスト化して登録しようとなかなか無謀なことを考えてスタートしたのですが、すぐに路線1つに1つの列車を生成することに切り替えました。なかなかの列車数があるのと、近郊列車はその違いがデフォルメしてしまうとわからないというのが理由です。

これが最初に生成した基本系となる横須賀線カラーの快速です。

路線や駅は、国土地理院からダウンロードしてきたポリゴンデータをもとにインポートしたのですが、緯度経度が正しくない駅がたくさんあってほんと修正が大変でした。そこは知恵を絞ってできるかぎり修正しやすい編集画面を考えて直していきました。

路線の編集画面は、このように路線に対して駅の一覧、登録してある列車の一覧が表示されています。

駅の編集画面、特に緯度経度の取得については企業秘密なのですが、こんど教えます。最初はスクレイピングで自動取得を試みました。Wikipedia にある駅ページに、緯度経度がのっているので、それを取得するバッチで生成しました。ほとんどがこれで取得できたのですが、同一駅名が複数ある場合などが判別が難しく、地道に手動で登録していきました。登録していって地図上でマーカーの位置を確認すると、すこし違う位置だったり、かなり違う位置だったりという場所があり、これはgoogle mapをもとに緯度経度をしらべてそのURLから取得するという処理をいれました。このあたりは運用しながら調査実験を繰り返してわかったのですが、googleの地図の位置が確定してから、数秒後にURLがかわって、そこに緯度経度がはいってきます。これはおそらくボット対策なのか、スクレイピング対策なのか、そういった負荷のかかる奴らの対策なのだと思います。

最新のお知らせ

thumb
2026年4月10日
【概念解説】マッチングアプリの魔法を解き明かす:一方向型マッチングの共通構造

1. はじめに:見かけは違えど、心臓は同じ 世の中には、新し...

No Image
2026年4月9日
心を揺さぶる名曲の正体:初心者のための作曲技法入門ガイド

1. はじめに:なぜ「あの曲」は心地よいのか? サザンオ...

thumb
2026年4月5日
見積もり:Laravel構造化見積もりエンジンの開発と要件

Estimates: Laravel Structured Estimating Engine Development...

thumb
2026年4月2日
MDXレンダリング最適化および高機能コンポーネント実装要件定義書

1. プロジェクトの背景と戦略的意義 モダンなWebフロントエ...

No Image
2026年4月2日
Next.js App Router × MDX 導入・完全ワークフロー

Next.js エバンジェリストの視点から、MDXをプロジェクトに...

thumb
2026年4月2日
【新常識】MarkdownとReactが融合する「MDX」の世界:記事の中でアプリが動く魔法

1. はじめに:なぜ今、MDXが必要なのか? プログラミン...

thumb
2026年4月1日
多拠点展開の「正解」がここにある。次世代ポータル基盤『Plus1 Community』から学ぶ5つの設計思想

1. イントロダクション:多拠点管理の「カオス」を解き明か...

thumb
2026年3月31日
アイプラスワンのホームページトップに、ECサイト基盤とコミュニケーションサイト基盤をのせたい

いいですね、その方向はかなり“刺さる”構成になります。今やる...

thumb
2026年3月30日
WindowsでのDocker開発を劇的に変える、5つの「戦略的」最適化術と真実

WindowsプラットフォームにおけるDocker開発の歴史は、仮想化技...

thumb
2026年3月29日
1つの方程式で、あらゆる「つながり」を。マッチング基盤設計に学ぶ、究極の再利用戦略

1. イントロダクション:マッチングサイト乱立時代の「車輪...