[bash]xvideosの動画をシェル芸でダウンロードする


夜な夜な自家発電に勤しんでいる中高生から中高年の皆様こんにちは。htmlソースにリンクがベタ書きされている静止画と違い、動画はcdnからの直リンク防止策が講じられているようです。しかしシェル芸人たるもの、ダウンロードのためだけにブラウザを開きっぱなしにするのはカッコ悪いですよね?さあワンライナーで動画をゲットしましょう!

[ (っ´∀`)っ@友の会 ~]$ URI=http://jp.xvideos.com/video〜〜〜/〜〜〜〜〜 ; wget -O $(basename ${URI}).flv $(curl -s ${URI} | grep flv_url | sed -e 's/%3A/:/g;s/%2F//g;s/%3F/?/g;s/%3D/=/g;s/%26/&/g;s/&/ /g;s/flv_url=//g' | awk '{print $11}')

動画のページを開いてソースを見てみると、flv_url=〜〜〜という箇所があって、ここが動画の埋め込み場所だということが判明しました。最初はリンク先の http://〜〜〜(cdnのURL)/ほにゃらら.flv までをコピペしてwgetしてみたのですが、どうやらその後の文字列も付け加えないといけないようです。リファラやユーザーエージェントは偽装しなくてもいけました。拡張子のあとの文字列はURLエンコードで変換されているので、sedで置換しています。間違っても動画を見て痴漢しないでくださいね。Yes 置換,No 痴漢 の精神で。

なお、動画をダウンロードする際は、いわゆる違法ダウンロードとならないよう、著作権法を守って楽しんでくださいね♡ また、本エントリーに書かれた方法は 2014/10/22 現在動作確認をとっていますが、xvideos側がシェル芸対策を施せば使えなくなる技でもあることをお含みおきくださいΞ(´ ゚_。`)