使用Ruby下载YouTube(源代码)

时间:2009-12-23 06:11:42

标签: ruby

我希望从YouTube下载视频,然后提取其音频。谁能指点我一些Ruby代码来下载视频?谢谢!

7 个答案:

答案 0 :(得分:10)

gem install curltube
然后跑 curltube <youtube-url>

https://github.com/maxogden/curltube

答案 1 :(得分:4)

不确定如何提取音频,但Ruby有很多很好的抓取/挖掘库。您可以使用它们来自动化浏览器并获取所需的数据(例如视频嵌入代码)。

我建议使用mechanize和hpricot的组合,但这里有一个相当全面的列表:

角度来说,Hpricot 机械化 Scrapi Scrubyt 引入nokogiri

您也可以尝试使用Rio来下载文件/视频:

力拓:http://rio.rubyforge.org/

希望它有所帮助。

答案 2 :(得分:4)

有一个更新的视频下载项目here on github,可让您从不同的网站获取Flash视频。

答案 3 :(得分:4)

检查https://github.com/davidgaya/youtube_rb

它很小而且不完整。

它可以为视频流提供过期和自定义的URI。

@video = YoutubeVideo.new "http://www.youtube.com/watch?v=zzG4K2m_j5U"
@video.stream_uri

获得stream_uri后,您可以下载它,并使用ffmpeg或gstreamer处理它。

答案 4 :(得分:2)

以下是一些下载YouTube视频的红宝石代码。不幸的是,这个库是用python编写的。

system("youtube-dl", "-o", filename, youtube_url)

您可以使用以下

提取音频
system("mplayer", "-dumpaudio", "-dumpfile", audo_filename, filename)

答案 5 :(得分:2)

这是一些链接到一些将从youtube下载FLV的Ruby源代码:

http://www.rorcraft.com/2008/08/29/download-youtube-videos-with-ruby/

我自己没有试过,但值得一试。

答案 6 :(得分:0)

您也可以使用quvi。它了解youtube和许多其他网站。它也可以处理播放列表。我在此处发布了代码示例https://stackoverflow.com/a/23127407/98509