YouTubeの動画をローカルに保存して見る方法
portsnapの出力を眺めてたら、/usr/ports/www/youtube_dlというのを見付ける。
気になったのでMakefileを覗いてみと・・・
$ head -n 16 /usr/ports/www/youtube_dl/Makefile # New ports collection makefile for: youtube_dl # Date created: 2006-08-12 # Whom: Pankov Pavel# # $FreeBSD: ports/www/youtube_dl/Makefile,v 1.4 2006/11/04 22:31:45 miwi Exp $ # PORTNAME= youtube_dl PORTVERSION= 2006.10.30 CATEGORIES= www MASTER_SITES= http://www.arrakis.es/~rggi3/youtube-dl/ DISTFILES= youtube-dl-${PORTVERSION} EXTRACT_ONLY= MAINTAINER= pankov_p@mail.ru COMMENT= A program for downloading videos from YouTube.com
どうもYouTubeの動画をダウンロードするプログラムらしい。
せっかくだからインストールしてみた。
事前準備
らしいので、
FLV形式そのままで再生するプログラムにmultimedia/mplayer、
FLV形式を他の形式に変換するプログラムにmultimedia/ffmpegを用意すればよさそう。
ダウンロード実践
PS3のTVCM(http://www.youtube.com/watch?v=CR3tsTCZHus)で試してみる。
ここではps3cm.flvという名前で保存する。
$ youtube-dl -o ps3cm.flv "http://www.youtube.com/watch?v=CR3tsTCZHus" Retrieving video webpage... done. Extracting video URL parameters... done. Video data found at http://youtube-655.vo.llnwd.net/d1/06/E6/CR3tsTCZHus.flv Retrieving video data... 623k of 623k done. Video data saved to ps3cm.flv
「-s」オプションで、ダウンロードは行わないシミュレーションモードというのになる。
あとはwgetでも何でも好きなのでダウンロードすればいいみたい。
$ youtube-dl -s "http://www.youtube.com/watch?v=CR3tsTCZHus" Retrieving video webpage... done. Extracting video URL parameters... done. Video data found at http://youtube-655.vo.llnwd.net/d1/06/E6/CR3tsTCZHus.flv $ wget -O ps3cm.flv http://youtube-655.vo.llnwd.net/d1/06/E6/CR3tsTCZHus.flv --01:23:45-- http://youtube-655.vo.llnwd.net/d1/06/E6/CR3tsTCZHus.flv => `ps3cm.flv' youtube-655.vo.llnwd.net をDNSに問いあわせています... 69.28.176.66 youtube-655.vo.llnwd.net|69.28.176.66|:80 に接続しています... 接続しました。 HTTP による接続要求を送信しました、応答を待っています... 200 OK 長さ: 638,847 (624K) [video/flv] 100%[===================================>] 638,847 306.22K/s 01:23:50 (305.28 KB/s) - `ps3cm.flv' を保存しました [638847/638847]
プロクシを使うならhttp_proxyに値をセットする。
$ http_proxy=http://hoge:3128 $ youtube-dl -s "http://www.youtube.com/watch?v=CR3tsTCZHus"