From: Michael Orlitzky Date: Sun, 9 Jan 2011 20:16:13 +0000 (-0500) Subject: Fix the Efukt video url regex. X-Git-Url: http://gitweb.michael.orlitzky.com/?p=dead%2Fwhatever-dl.git;a=commitdiff_plain;h=913fcb229bbd49c44885b4d666f2b5992c478bc7 Fix the Efukt video url regex. --- diff --git a/src/websites/efukt.rb b/src/websites/efukt.rb index 38b5913..0a1e10e 100644 --- a/src/websites/efukt.rb +++ b/src/websites/efukt.rb @@ -26,7 +26,7 @@ class Efukt < Website return url =~ VALID_EFUKT_URL_REGEX end - + def get_video_url() page_data = self.get_page_data(@url) video_url = self.parse_video_url(page_data) @@ -40,7 +40,7 @@ class Efukt < Website # better than the superclass method because it doesn't rely on the # network. filename = @url.split('/').pop().split('.')[0] - + # Most of the URLs will just be the video's id, # followed by an underscore and the video title (with # all spaces replaced by underscores. Sounds like a good @@ -50,32 +50,25 @@ class Efukt < Website # Overwrite the default if our regex worked. filename = matches[1] if not (matches.nil? || matches.length < 1) - + return (filename + '.flv') end - + protected; - # Get the FLV file URL from the HTML page for this movie. - # It's stored in some Flash variable. def parse_video_url(page_data) - # There are two formats; try them both one at a time. - video_url_regex = /&file=(http:\/\/.*\.flv)&/i + # Get the FLV file URL from the HTML page for this movie. + # It's stored in some Flash variable. + video_url_regex = /flashvars\.file = "(http:\/\/.*\.flv)"/i matches = video_url_regex.match(page_data) if not (matches.nil? || matches.length < 2) return matches[1] + else + raise StandardError.new('Could not find the "file" Flash variable.'); end - # If we didn't return a match already, try the second format. - video_url_regex = /