皆さんは「YouTubeMP3もどき」というサイトをご存じですか?
このサイトはYouTube上にある動画をURLを貼りつけることでダウンロードすることができ、私もそこそこ重宝していました。
ですが、最近は混雑化により長い場合では数十分もダウンロードに時間がかかるようになってきており、これでは使いづらいな…ということで、自分で作ってみたのが、
そう、「YouTubeMP3もどきもどき」です!
基本的に本家もどき様と同じ
1.送信されたURLをキューに入れる
2.キューの順番が回ってきたらYT-dlpでサーバーに動画をダウンロード
3.それをクライアントに表示
という仕組みですが、細かいいくつか改良点があります。
改良点
動画に固有のダウンロードページがある
もどき本家様の仕様では、すべての工程を同じページで行っており、再読み込みをしたらせっかくダウンロードした動画が消えてしまう仕様でしたが、もどきもどきではダウンロードした動画ごとにUUIDを割り振りURLからDLページを開ける仕様になっているので、間違えて開けなくなるリスクがありません。またUUIDはcookieとしても保存されるので、ブラウザのタブを閉じてしまっても「ダウンロード状況」ボタンから再度開くことが可能。
ストレージの使用状況に応じて自動削除
本家もどき様では毎時決まった時刻にサーバーが再起動されダウンロードされた動画は自動削除されますが、もどきもどきではサーバーのストレージに余力がある場合は削除せず、保存容量が一定に達したとき古い順に自動で削除していきます。また、ダウンロードから10分以内の動画は削除されません。
プロジェクトメンバー募集中!
現在このサイトの利用者はそこまで多くなく、特に問題は生じていません。
しかし今後のサービス拡大を見据えて、クラウドコンピューティング方式(サーバーの分散)への移行を検討しています。また、Python中級者なのでコードが汚いです。そこで、開発に協力していただける方を募集中です!
開発にはPythonのFlaskモジュールを使用しています。
今後の開発タスク
- 正式名称の決定、ロゴアイコンのデザイン
- リファクタリング
- クラウドコンピューティング式へ移行