Skip to content

Instantly share code, notes, and snippets.

@rafapolo
Created May 23, 2012 23:18
Show Gist options
  • Save rafapolo/2778450 to your computer and use it in GitHub Desktop.
Save rafapolo/2778450 to your computer and use it in GitHub Desktop.
Baixa todos os videos listados.
#encoding: utf-8
#autor: polo
require 'open-uri'
def getvideo(url)
puts "Pegando #{url}"
youtubepath = url
uri = URI.parse(youtubepath)
open(uri) do |file|
openedsource = file.read
# search for the title
rgtitlesearch = Regexp.new(/\<meta name="title" content=.*/)
vidtitle = rgtitlesearch.match(openedsource)
vidtitle = vidtitle[0].gsub("<meta name=\"title\" content=\"","").gsub(",","-").gsub("/","-").gsub("\">","").strip.gsub(/ /,'-')+".flv"
# search for the download link
rglinksearch = Regexp.new(/,url=.*\\u0026quality=/)
vidlink = rglinksearch.match(openedsource)
vidlink[0].split(",url=").each do |foundlinks|
vidlink = foundlinks.gsub(",url=","").gsub("\\u0026quality=","").gsub("%3A",":").gsub("%2F","/").gsub("%3F","?").gsub("%3D","=").gsub("%252C",",").gsub("%253A",":").gsub("%26","&")
end
download(vidlink,vidtitle)
end
end
def download vidlink, vidfile
if !File.exists? vidfile
puts "Downloading #{vidfile}"
writeOut = open(vidfile, "wb")
writeOut.write(open(vidlink).read)
writeOut.close
else
puts "Já salvo. #{vidfile}"
size = (File.size(vidfile).to_f / 2**20).round(2)
puts "#{size} MB"
end
puts "="*20
end
videos = %w{
http://youtu.be/6Ed9qwQy19M
http://www.youtube.com/watch?v=Epnv58-YNRg
http://www.youtube.com/watch?v=rtwNGSb-NnE
http://www.youtube.com/watch?v=4QJPpjSX8i4
http://www.youtube.com/watch?v=iWCTSuyMHoo
http://www.youtube.com/watch?v=kfCaoeywtQw
http://www.youtube.com/watch?v=OMwRgCwMqfs
http://www.youtube.com/watch?v=JWReNfbiXXI
http://www.youtube.com/watch?v=xBPK0_zAZng
http://www.youtube.com/watch?v=PwEhQcwOleQ
http://www.youtube.com/watch?v=QxTE2U9IlMs
http://www.youtube.com/watch?v=11BiE6DAIkY
http://www.youtube.com/watch?v=VCFnNAnbgMA
http://www.youtube.com/watch?v=U2S1y8sBVIw
http://www.youtube.com/watch?v=xr0x-HpwYhE
http://www.youtube.com/watch?v=5IUiss7WRw4
http://www.youtube.com/watch?v=3dQYSrBRJQ0
http://www.youtube.com/watch?v=xRBzABT-1A0
http://www.youtube.com/watch?v=2dURl8fUFU4
http://www.youtube.com/watch?v=ZKDRaZXajIg
http://www.youtube.com/watch?v=i6rjk6NojY4
http://www.youtube.com/watch?v=3Ft0dBimJew
http://www.youtube.com/watch?v=VFzUW8_5ssA
http://www.youtube.com/watch?v=yFvb89MjnEA
http://www.youtube.com/watch?v=Iqd5DFB6wTM
http://www.youtube.com/watch?NR=1&v=QWzPXxL7cQc
http://www.youtube.com/watch?v=ZGbESkyNVOE
http://www.youtube.com/watch?v=Nz3hi60zcv0
http://www.youtube.com/watch?v=VYuJ6Oe1wYY
http://www.youtube.com/watch?v=QWDUukyLz9o
http://www.youtube.com/watch?v=M9WkHKQrh_M
http://www.youtube.com/watch?v=bIrXgrIcGbw
http://www.youtube.com/watch?v=QQ-jdYIdki0
http://www.youtube.com/watch?v=b6VpG2Qx97s
http://www.youtube.com/watch?v=Dpp6N3yKDfQ
http://www.youtube.com/watch?v=Nm6XCUdPYcI
http://www.youtube.com/watch?v=yGW5EM3hkSw
http://www.youtube.com/watch?v=JxvpR8e7I1U
http://www.youtube.com/watch?v=iQselKXpL8c
http://www.youtube.com/watch?v=2DRc5-iHBis
http://www.youtube.com/watch?v=VFzUW8_5ssA
http://www.youtube.com/watch?v=fik1mximZ6o
http://www.youtube.com/watch?v=W2ohRRgWS6Y
http://www.youtube.com/watch?v=QxTE2U9IlMs
http://www.youtube.com/watch?v=1odTXN-U084
http://www.youtube.com/watch?v=lQUbHRV39D4
http://www.youtube.com/watch?v=Iqd5DFB6wTM
http://www.youtube.com/watch?v=DvT6zKzEfzc
http://www.youtube.com/watch?v=tkm_Dg_4wwY
http://www.youtube.com/watch?v=JwWcfPC6isw
http://www.youtube.com/watch?v=FbYpOnsLZj8
http://www.youtube.com/watch?v=b6VpG2Qx97s
http://www.youtube.com/watch?v=erCc6GcwIL8
http://www.youtube.com/watch?v=lQDcrJyusx0
http://www.youtube.com/watch?v=McU4drm7Mq8
http://www.youtube.com/watch?v=v5_tzBmXGI8
http://www.youtube.com/watch?v=L8hdk8Mt3eM
http://www.youtube.com/watch?v=75GXhKHnK7w
http://www.youtube.com/watch?v=AnhS1xRUFEc
http://www.youtube.com/watch?v=5GDgO7BaA8c
http://www.youtube.com/watch?v=EhX3UHsIR_w
http://www.youtube.com/watch?v=8f4_Ii0pXMg
http://www.youtube.com/watch?v=xMNZVk-s-cA
}
#pega tudo
puts "===== Cidol Tube ====="
videos.each {|v| getvideo v}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment