FreeBSDのportsの
- /usr/ports/www/youtube_dl
を使うと、youtubeのflvファイルをダウンロードできる。
ffmpegと組み合わせて、プレイリストのファイルをダウンロードしたり。
#!/usr/local/bin/ruby
$KCODE="u"
require 'rubygems'
require 'hpricot'
require 'open-uri'
plist = ARGV[0].scan(/p=(\w*)/).first.first
s = open “http://www.youtube.com/view_play_list?p=#{plist}”
doc = Hpricot s.read
YOUTUBE_ADDR = “http://www.youtube.com”
i = ARGV[1].to_i || 1
doc.search(“a.video-thumb-120″).each do |l|
addr = l.to_html.scan(/href=”([^"&]*).*”/)
title = l.to_html.scan(/img title=”([^"]*).*”/).first.first.gsub(” “,””).gsub(“/”,”-”)
downaddr = YOUTUBE_ADDR + addr.first.first
filename = “#{Time.now.strftime(“%Y%m%d”) + ‘_’ + sprintf(“%04d”,i) + ‘_’ + title}”
`/usr/local/bin/youtube-dl -o #{filename}.flv #{downaddr}`
`/usr/local/bin/ffmpeg -i #{filename}.flv -acodec copy #{filename}.mp3`
i += 1
end
youtube-dlのオプションは -bにしたほうがよりおい音でdownloadできると思いますがどうでしょうか?
なるほど。あまり音にこだわりが無かったので特に気にしてませんでした!