重いエッチ動画は自動ダウンロードで

もくじ

趣旨

うちは田舎なのでブロードバンドと言ってもADSLで1Mビット/secあたりが限界ですので30Mバイトもあるような大きなエッチ動画をダウンロードするのは大変です。深夜や早朝・日中など、エッチ動画サイトが軽い時間帯ならまだ待てますが、混んでいる時間帯はADSLの1Mビット/secどころか20Kビット/sec位になることもあります。
ダウンロードしたい動画をメモしておいて、早朝にパソコンを自動運転してダウンロードすればきっと解決するはず・・なら、やってみようというのが趣旨です。

前提条件(PC環境)

作戦

私はパソコンを常時運転しているわけではありませんので、指定時刻(サイトが空いている時刻)に自動起動し、目的の動画をダウンロードしたら自動で電源を切ります。
第一段階として、あらかじめ探しておいた動画をダウンロードすることを考えます。
第二段階として、指定したサイトの更新された動画を自動で探してダウンロードする事を考えます。

ダウンロードツールcurl

動画のダウンロードにはcurlというツールを使います。
curlと言っても次世代インターネット言語のCurlではなくてコマンドラインで指定したURLのファイルを持ってくるツールです。
FreeBSDの場合はports(portsはすぐ名前が変わるからリンクが切れてるかも)でインストールします。package(FreeBSD 5.2.1のpackageにリンク)もあるかも。

curlは適切にインストールして下さい。
無事インストールできたものとして話を進めますが、とりあえずcurlは
% curl http://homepage3.nifty.com/segu/
のように使用します。(%はプロンプト)
目的の動画ファイルがわかれば
% curl -O http://動画ファイル
とすれば動画ファイルがダウンロードできるはずです。(が、実際はこれではダウンロードできない動画サイトは多くあります。)

curlでの動画のダウンロードのやりかた

どうして
% curl -O http://動画ファイル
では動画がダウンロードできない場合があるのでしょう?
それはそういう風にサイトを作っているからです。
動画サイトがどのように収入を得ているか知りませんが、バナー広告みたいに1クリック何円のリンクがあって、動画と間違えてクリックしてもらう事で収入を得ているのではないかと思っています。つまり、ブラウザでダウンロードしないと動画がダウンロードできないように(意図的に)設計していて、動画を探しに来た人にリンクをクリックしてもらいたい、つまり機械に自動ダウンロードして欲しくないからではないのでしょうか。
そんな動画サイトを敵にしたくありませんので、とりあえず動画を見つけるところまでは自動化せず、見つけた動画をサイトが空いている時にダウンロードするための方法を紹介するにとどめておきます。

前置きが長くなりました。
結局、ブラウザでダウンロードしていると動画サイトに思い込ませれば良いわけです。動画サイトはどうやってブラウザと判定しているのでしょう?
ブラウザ名は見ていない(見ていても動画のダウンロードの条件にブラウザ名は判定に使用していない)ようです。どうも、見ているのは「どのページを見ているブラウザからのダウンロード要求か」ということのようです。
ということで、
% curl -e http://その動画があるページ -O http://動画ファイル
とすれば多くの場合ダウンロードできます。

これでもダウンロードできないのはユーザー名とパスワードが設定してある場合があります。
ユーザ名とパスワードを指定するのは
% curl -u ユーザ名:パスワード -e http://その動画があるページ -O http://動画ファイル
でできます。
一時、ユーザ名やパスワードがShift-JISでなくてはならない場合があってめんどう(私はEUCを使っているのでShift-JISは入力できない)だったのですが、nkfを併用するなどして解決していました。

ここまでできれば、あとはダウンロードを行なうcurlコマンドを書いたスクリプト(MS-DOS風に言えばバッチファイル)を作って、サイトが空いていそうな時刻に実行するだけ。

決まった時刻に実行するcron

作成中

パソコンの自動起動・自動シャットダウン

パソコンの自動起動はパソコンのハードウエアによって出来ないかもしれません。パソコンの電源を入れた直後に<DEL>などを押すとBIOSの設定画面になると思いますので(BIOSの設定は自分のパソコンの説明書などで調べて下さい)、そこで起動時刻を設定します。パソコンによってはBIOSでなくてパソコンに附属のソフトで設定するようになっているかも知れません。
パソコンの自動シャットダウンは、ここではFreeBSDをrootにならずに動かす事を考えていますので、

してください。
FreeBSDの起動時にpppが実行されるようなら特にpppをユーザーから実行する必要はありませんし、私は良く知りませんがブロードバンドルーターとかいうのを使うとpppを実行しなくなるとかいうのであればそれはそれでOK。ネットワーク周りの設定がどうなっているかは人それぞれですので・・・
(私は毎回いちいちppp -ddialしてるのさ)

動画サイトを敵にしそうな自動化

作成中


トップページに戻る

メールアドレスはトップページにあります