コミュ障だから明日が僕らをよんだって返事もろくにしなかった

何かを創る人に憧れたからブログをはじめたんだと思うよ

ついでになんか作ってみる

はい、それじゃあまずは鯖江市に向かって一礼を……。

そういえばGoogleスプレッドシートってスクレイピングまがいのことできたなってことでそれ使ったアプリでも作ってみることにします。

件のスプレッドシートでできる機能ってこれね。
IMPORTXML - ドキュメント エディタ ヘルプ
なんか更新は2時間ごととかいう情報があるんだけどどこソースなのかよくわからんかった。

ここのXPathってとこにDOMぶち込むとスクレイピングまがいのことができるとのことです。


f:id:andron:20191126104902p:plain
HTMLからXPath取得するにはクロームの開発ツール開いてこんな感じで取得するとお手軽です。ただこれ万能じゃなくてYouTubeみたいにWeb Components使ってるようなサイトだと無理っぽいです。

てなわけですので以前利用していたスプレッドシートだけでアプリ作れるツールのGlideでアプリ作ってみることにします。

広告


アプリできた

またデータに鯖江市をお借りします。
rminx.glideapp.io
んで、こんなんできました。鯖江市の道路工事情報を取得します。これで鯖江市に行くとき便利になりますね(ない)。まあ更新がまじでないので便利になることはないと思われ。リアルタイムオープンデータとはなんだったのか……。

参考
道路工事情報(XML) – めがねのまちさばえ 鯖江市


ちなみに、スプレッドシートの中身はこんな感じ。
鯖江市道路工事情報 - Google スプレッドシート
加工しないで使いたかったのだけどなんか無理でした。Sheet1とかXML警察の人がみたらぶちぎれそうなやつだと僕は思うんだ。あ、importxmlの細かい使い方はGoogleのヘルプとかを見てほしい。これ先頭一個目取得するだけのものだと思ってたんですけど、一致すればまとめて取得できるんですね。これなら関数使いまくってDOS攻撃まがいになることもないかな……。HTMLでスクレイピングとか言っておきながらXMLデータ使ってんですけどXMLの方が取得しやすいのでこっちでやってしまった。許してほしい。



そういえばGlideみてて知ったんですけど地図系ツールにこんなんあるんですね。
Mapbox
ざっくりしたマップで十分な場合はこれよさそう。これ使ってなんかアプリつくれないかな……。