Subscribed unsubscribe Subscribe Subscribe

oinume journal

Scratchpad of what I learned

DMM英会話でお気に入りの先生の空きレッスンが登録されたらメールで通知するヤツ作った

2016/11/25追記

後継のlekcijeというサービスを作ったのでぜひこちらをご利用下さい。

www.lekcije.com

動機

  • どのSkype英会話でもそうだと思うんだけど、人気のある先生はすぐ予約が埋まっちゃう
  • でもスケジュールをいちいち検索してチェックするのはダルい

というわけで作りました。

使った技術

github.com

ソースコードは↑。"Deploy to Heroku" buttonをつけておいたので、Herokuアカウントがあれば誰でもこのアプリケーションを使うことができる。やり方はREADMEを見てもらえればと。

概要

  • Heroku Schedulerで10分おきにお気に入りの先生のスケジュールのページをスクレイピング
  • 前回のスケジュール(DB)と今回スクレイピングしたスケジュールを比較
    • 新しく空きレッスンがある場合はメールで通知
  • スクレイピングしたスケジュールをDBに登録
  • スケジュールをチェックしたい先生のIDを入力する画面を作るのが辛かったので、その辺は環境変数経由でIDを渡すという手抜きな構造
    • 超ヒマになったら画面作りたい

結果

人気の先生の予約がめっちゃ取りやすくなったし、副次的な効果としてキャンセルで空いたレッスンにもすぐ気付けるようになったので、DMM英会話やってる人は使ってみたらいいと思います。

どんどん話すための瞬間英作文トレーニング (CD BOOK)

どんどん話すための瞬間英作文トレーニング (CD BOOK)

余談

これを作り始めてからGitHubに草が生えるようになった。

commits of github.com

今回は小規模だったためORMapperなどのライブラリ・フレームワークを使わないで実装したけど、会社だけでコードを書いているといかに自分がフレームワークやライブラリに依存したコードしか書けないかを思い知らされて良かったです。