なぜ作ったのか
- 宇宙兄弟の影響でISSかっけーってなったから
- 星じゃなくてISS見るために空見るってかっこよさそうだったから
みたいなふわふわした感じで作り始めました。
使用技術
Rails7
line-bot-api
苦労したこと
ISSが見える時間を取得するのが難しかったです。
情報取得までの道のりはこんな感じです。
-
既存のAPI
既存のAPIがあったのですが、ISSの位置情報だけを取得するので、見えるかどうかの判定するための実装が難しく断念
http://open-notify.org/Open-Notify-API/ISS-Location-Now/ -
スクレイピング
スクレイピング対象のサイトになります。
#きぼうをみよう
最初はmechanizeというgemを使用してスクレイピングしようとしました。
SPAで構築されていたのでうまくスクレイピングできませんでしたが、使い方としてはとても簡単でした。
その他chromedriverを使用してスクレイピングしたのですが、本番環境で動作するのか分からずという感じでした。
こちらの記事が参考になりました。
https://zenn.dev/usmoo/articles/133bb9ab4864d7 -
#きぼうをみようのjsonファイルを直接取得する
サイトの検証ツールのNetworkタブを見ると、tokyo.jsonなるものが読み込まれている?
これを開いて見ると、取得したかった情報が全て詰まっているではありませんか!!!
ということで結果的にスクレイピングせずに実装完了しました。
最後にISSが見れる時間をLINEで通知するようにしてみました。
さいごに
messagingAPIは無料枠なので、サービス公開は控えようかなと思います。
ちなみに10人に一斉送信すると10通としてカウントされるので、無料枠はすぐに消化しちゃいそうでした。
(2023年6月から無料枠200通)
最後まで見ていただきありがとうございました。