- ニコニコ動画から動画をダウンロードする
- ニコニコ動画にアクセスするためのセッションIDを取得する
- 目的の動画のurlを突き止める
- 動画をダウンロードする
- ダウンロードした動画を再生する
ニコニコ動画から動画をダウンロードする具体的に方法については以下のようになる。
- ニコニコ動画にアクセスするためのセッションIDを取得する
- 目的の動画のurlを突き止める
- 動画をダウンロードする
ニコニコ動画は会員式であり、会員登録していない人は基本的にコンテンツにアクセスできない。会員の人はメールアドレスとパスワードを入力することにより、「以降このIDを提示することでコンテンツにアクセスしてもいい」という通行証を得ることが出来る。これがセッションIDである。セッションIDはブラウザがクッキーとして自動的に管理してくれるため、一般ユーザーの目に触れることは一切ない。ちなみにこのセッションIDという名前は今ここで勝手に命名したものなので他で使っても通じない。
セッションIDとは具体的には
user_session_xxxxxx_xxxxxxxxxxxxxxxxxxxxxx
という表記の文字列である。最初のxxxxxxにはユーザーのアカウントIDが入る。後ろのxxxにはよく分からない規則によって生成されたよく分からない桁数の数値が入る。
このセッションIDはニコニコ動画にログインする度に生成され、それまでのセッションIDは無効になる。そのため、Firefoxを使ってニコニコ動画を見て、次にIEを使って見た場合、Firefoxで新しいページを開こうとすると再ログインを要求される。IEとFirefoxを同時に使う状況はまずないといっていいが、作成したプログラムとブラウザと併用するというような状況は考えられる。ブラウザと同じようにログイン処理を行って新しいセッションIDを発行することはそれほど難しいことではないが、どうせならブラウザと共存したい。そのためまずIEがハードディスク上に記憶したセッションIDを探し出してそれを利用するというアプローチを取る。最近はFirefoxのユーザも増えているのでFirefoxにも対応できるようにする。Operaは……今回は見送ることにする。
IEとFirefoxからセッションIDを取得できなかった場合には、独自にログイン処理を行ってセッションIDを獲得して使うことにする。そうしてセッションIDを得たならば、ダウンロードしたい動画の番号から動画ファイルのURLアドレスを取得する。これはニコニコ動画の(正式に公開されている訳ではない)APIを使用する。
URLが獲得できたならば、後はダウンロードするだけでいい。ダウンロードするためのプログラムの作り方はネット上を探せばいくらでもあるのでそう大変なことではない。