2015-05-23 149 views
0

如何使用ruby从视频网址(如https://www.youtube.com/watch?v=zs7xO5P3Az4)下载YouTube视频?如何使用ruby下载YouTube视频?

+0

你确实有必要在Ruby中实现整个事情?如果没有,只需调用外部程序'youtube-dl'来进行下载。 (如果是,请查看该程序的源代码并将其移植到Ruby中。) – Arkku

+0

完全是在Ruby中 – Ishahriyar

+0

为什么?看起来你不可能避免至少调用C库(需要付出合理的努力)。 – Arkku

回答

0

嘛,我发现最简单的方法就是直接获取视频网址与Viddle-rb宝石,然后用下载Ruby的open-uri

require 'viddl-rb' 
require 'open-uri' 

url = ViddlRb.get_urls('https://www.youtube.com/watch?v=zs7xO5P3Az4').first 

open('my_video.avi', 'wb') do |file| 
    file << open(url).read 
end 

puts Dir['./*.avi'] #=> ./my_video.avi