【開発】予約の空きやキャンセルがでたらLINEに通知するシステムを作った話
こんにちは、やもり(yamori-tech)です。
開発として「予約の空きやキャンセルがでたらLINEに通知するシステムを作った話」について書こうと思います。他サイトでも、大体同じような流れでできると思います。
結論としては、サーバ(CentOS)で対象サイトの予約ページを定期的にスクレイピングし、予約可能な日時を見つけたらラインへ通知するようにしました。
またスクレイピングでありがちな「ブラウザのバージョン変更ごとに手動でChromeDriverを更新しなくてはならない煩雑さ」を回避するため、
今回は ChromeDriverManager() を導入しました。
- なぜ作ったか
- どのように作ったか
- 方針とシステム概要
- システム設計上の考慮点
- スクレイピングについて
- LineNotifiyについて
- cron利用を踏まえた環境構築方針
- 構築環境
- スクレイピング環境の構築
- yum で Google Chrome をインストールするために、リポジトリを追加
- yum で Google Chrome をインストールする
- pip で Google Chrome をインストールする
- スクレイピング実装
- 対象ページへのアクセス方法
- 対象ページの操作
- 対象ページの解析(予約可能日の抽出)
- LineNotify実装
- cronの設定方法
- まとめ