Я хочу скачать видео с YouTube, а затем извлечь его аудио. Может кто-нибудь указать мне код Ruby для загрузки видео? Спасибо!
gem install curltube
тогда беги curltube <youtube-url>
curltube <youtube-url>
https://github.com/maxogden/curltube
Чек 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.
Более поздний проект по загрузке видео здесь, на github , который позволяет вам захватывать флэш-видео с разных сайтов.
Не знаю, как вы будете извлекать аудио, но в Ruby есть много хороших библиотек для анализа / извлечения. Вы можете использовать их для автоматизации браузера и получения необходимых данных (например, код для вставки видео).
Я рекомендую использовать комбинацию механизации и hpricot, но вот довольно полный список:
Hpricot Механизировать Scrapi Scrubyt Nokogiri
Вы также можете попробовать Rio для загрузки файлов / видео:
Рио: http://rio.rubyforge.org/
Надеюсь, это поможет.
Вот ссылка на некоторый исходный код Ruby, который загрузит FLV с youtube:
http://www.rorcraft.com/2008/08/29/download-youtube-videos-with-ruby/
Я сам не пробовал, но стоит попробовать.
Вот код ruby для загрузки видео на YouTube. К сожалению, библиотека написана на python.
system("youtube-dl", "-o", filename, youtube_url)
Вы можете извлечь аудио с помощью
system("mplayer", "-dumpaudio", "-dumpfile", audo_filename, filename)
Также вы и используете quvi . Он понимает YouTube и множество других сайтов. Также он может обрабатывать плейлисты. Я разместил пример кода здесь https://stackoverflow.com/a/23127407/98509