Downloading YouTube Videos with a Groovy one-liner, and convert it to mpeg4

  • Post author:
  • Post category:其他


Today I used LiveHTTPHeaders to take a closer look at how the youtube video streams are directed to the browser. And I found that

my previous attempt

actually has some redundency in it. To get the flv video stream, simply request the URL:

http://cache.googlevideo.com/get_video?video_id=${vid}

where vid is simply the v string in the original URL. e.g.

http://www.youtube.com/watch?v=5C0I7Ef4gQI

So the simplified version is

one line of code

even shorter now.

def vid = (args[0] =~ (/(?<=v=).*$/)).getAt(0)
new File(“${vid}.flv”).withOutputStream{os -> new URL(