読売ジャイアンツ公式リセール(tixplus.jp)の出品を監視し、条件に合うチケットが出たら通知するサービス。
バックエンド: FastAPI + APScheduler(5分間隔ポーリング)/ DB: SQLite/ 実行環境: Docker / docker-compose(restart: always)でgumma上に常時稼働/ 通知: ntfy.sh(将来的にLINE Messaging APIへ移行予定)
tixplus.jpはInertia.js製のSPAだが、data-page属性にページ全体のJSONが埋め込まれているため、JSエンジンなしでcurlのみで出品データを取得できる構造を見つけて実装。日付から試合IDを解決するリゾルバはシリーズまたぎにも対応し、1時間キャッシュで負荷を抑えている。
個人開発。Web UIから監視条件(上限価格・枚数・試合日)を変更でき、変更後はDocker再起動なしで即座に反映される設計。