お知らせ

現在サイトのリニューアル作業中のため、全体的にページの表示が乱れています。

Webツール置き場阪神バス神戸西宮線の接近情報のリンク集を作った。

阪神バスに乗るときに時刻表代わりに接近情報を見ることが多いのだが、この接近情報は開くのに非常に手間がかかる難点があり、パッと開ける仕組みが欲しかった。

rosen_hanshin-bus.png

ブックマークできることからURLが存在することは知っていたので全部網羅したリンク集を作っておけば困ることが減るのでは?と思い、作ることにした。

URLフォーマットの解析

しかしURLのフォーマットが難儀でやや苦労した。フォーマットは以下のような感じだ。可読性のためURL Encodeは外してあるが、実際にはURL Encodeされている。

https://rosen.hanshin-bus.co.jp/busstatedtl?mode=4&fr=<バス停名>&frsk=B&tosk=&dt=<yyyymmdd0000>&dgm=<バス停名>:&dgmpl=<バス停名>:<上下コード>:1&p=0,8,9&IncludeHankyu=0&pole_station_code=<バス停コード>

各パラメーターの役割について、値とパラメーター名から幾らか推定はできたが、幾らか消したり足したりしながら試行錯誤していても、正直よくわからない部分が多かった。

例えばfrdgmはなくても動くっぽいので最悪削ってもいいのだが、dgmplが曲者で、ここに正規のバス停名が入ってないとサーバーから応答が来なくなる。またfrdgmhogeにして、dmgpl=hoge:2:1みたいにするとバス停検索画面に遷移し機能しなくなった。また、dtは数年前の日付をしても動くので恐らく機能には深く関わってなさそうだった。

恐らくこういった挙動からして、裏側でバス停名による検索を走らせてるのではないか?と考えたり、まぁ色々ありそうな気もしたのだが、面倒なのでパラメーターは全部残すことにした。

バス停の特定なんか、pole_station_code=<バス停コード>で全部やればいいじゃんとも思うのだが、恐らく歴史的経緯で複数のサブシステムが関連しており、上手く整合が取れていないのだろう。

正規バス停名の取得

しかし、こうなると正規のバス停名を取得するのが手間だった。何せ文字列で一気に取れる一覧がないのだ。悩みつつ何かないか探しているとバス停コードからバス停名を取得できる便利なAPIを見つけたので、これを使うことにした。

次のようなスクリプトを書くとバス停名が取れたため、適当にバス停コードに1~500辺りを設定し流してみると上手いこと行った。

curl 'https://rosen.hanshin-bus.co.jp/listrosenzucode' -H 'user-agent: hoge-bot' --data-raw 'qry=<バス停コード>'  | perl -ne '/"name": "(.+?)"/; print "$1"'

HTMLの生成とリンク集の作成

ここまでくれば後は簡単だ。この結果からリンク集を作るためのHTMLを生成すればいい。そして出来たのが記事先頭で紹介した阪神バス神戸西宮線の接近情報のリンク集だ。これでどのバス停にいるときでも瞬時に接近情報を開くことができるようになった。

hanshin-bus_page_screen.png

ろくにCSSを書いていないので見た目が簡素だが、気が向いたら調整しようとは思う。

あとがき

バス停コードからバス停名を取得するためのhttps://rosen.hanshin-bus.co.jp/listrosenzucodeというAPIを見たとき、これを呼んでいるのがJavaScriptだったので、JSにハードコードしておくか、マッピングを書いたJSONなりXMLを転がしておけば一々APIを作らずともよく、サーバーのCPU時間や帯域も使わずに済むので良くないか?とか思ったが、きっと色々あるのだろうと思い、深く気にしないことにした。

投稿日:
ジャンル::サイト運営

ちっとも眠気が来ないのでトップページを弄くり回していたのだが、トップページが概ね完成した以来の大規模更新となる更新を行った結果、Lighthouseのスコアが100になった。

主な更新としては2カラムを1カラムに落とし、職歴系の記述をガっと消した感じ。趣味のサイトなのに仕事のことあんま書きたくないなというのと、書いててもあんま意味ないなと思ったので消した感じだ。

前回 今回
前回のやつ
今回のやつ
以前のSPビューでの結果 今回のSPビューでの結果
以前のSPビューでのLighthouseの結果
今回のSPビューでのLighthouseの結果
以前のPCビューでの結果 今回のPCビューでの結果
以前のPCビューでのLighthouseの結果
今回のPCビューでのLighthouseの結果

改善点としては、以前リンクの隙間が狭いといわれていたので微妙に広げてみたくらいで、後はほとんど特に何もしていないが、100点になってしまった。シングルカラムになったからかもしれない。前回の結果を保存していないので詳細は分からないけど、100点になったのでいっかという感じ。

WordPressからadiaryへの移行に伴いアクセス数が減っていたのだが、最近徐々に元に戻っていることに気が付いた。理由はわかっていないがURL構造の変化あたりが大きいのだろうか?一応リダイレクトはかけているのだが…。

検索流入が増えていることがわかるGoogle Search consoleのグラフ

何はともあれ戻ってきているのはいいことだと思う。インデックス鵜や記事数も変わっているので単純比較こそできないものの上位の結果になっているページは変わっていないので、URL構造の変化を適当な理由にしておこうと思う。

しかもCTRについては上がってさえいるので、これは良い傾向だと思う。これもadiaryの成果なのだろうか?

因みにBing Webmaster toolも使っていて、こちらもadiary移行後は停滞したように見えなくもないが、こちらも最近では盛り返してきているように見えるので良い傾向だと思う。こちらは既にWordPressの時より良くなっているように見える。そもそものアクセス数が低くて何とも言えないがBingなので仕方がないだろう。

改善傾向がわかるBing Webmaster toolの画面

因みにGoogleとBingでの流入キーワードは大まかには同じなのだが、細かく見るとBingはサーバーサイドやネットワーク系、COM3D2、Windowsのトラブルシューティング的な内容が多いように思う。もしかするとスタートメニューとかなんかから検索する人が多いのかもしれない。

参考までに以下は左がGoogle、右がBingの検索流入情報だ。

Googleのキーワード流入情報
Bingのキーワード流入情報

はてブが付くようになった。

blog.lycolia.info[B!]新着記事・評価 - はてなブックマーク

WordPressの時もブクマボタンはつけていたのだが、はてブが付くことがなかった。しかしadiaryにしたらつくようになった。WordPressは2年やり、adiaryはまだ4ヶ月だが、早くも7記事もブクマされている。ブクマ数が5 userになっているものさえある。

恐らくWordPressの時は余白の多いスカスカサイトだったのに対し、今は旧はてなダイアリーと酷似したデザインで、間が詰まっているから押されやすいのだろう。

他の個人サイトから被リンクを受けた

同じくadiaryで運営されている他のサイトのリンク集に掲載されていた。恐らくadiary利用者のページから辿られたのだと思うが、これはちょっと新鮮だった。

因みに他のサイトのリンク集に乗るのは実に13年ぶり、それも相互リンクでなく見知らぬサイトのリンク集からリンクされるパターンは22年運営してきて初ではなかろうか?

2022/03/02の公式ニュースによると以下の通りあり、転送容量の上限が撤廃されていた。これまでアクセス増に伴う転送制限に過敏になっていたが、もうそこは考えなくてもいいようだ。これでこそ大容量ストレージが生かせるというものだ。

さくらのレンタルサーバを2022年2月15日以前にご契約されたお客さま※、さくらのレンタルサーバ リセール向けサービスおよびさくらのマネージドサーバをご契約のお客さまを対象に、転送量の無制限化を実施いたします。これにより、さくらのレンタルサーバ / マネージドサーバをご利用いただいている全てのお客さまの転送量が無制限となります。

因みに昔はファイルストレージ的な使い方をして詰まらせてしまい、コンテンツブーストで回避していたことが何度かあった。