diff options
| author | Ricardo Garcia <sarbalap+freshmeat@gmail.com> | 2008-09-13 13:23:24 +0200 | 
|---|---|---|
| committer | Ricardo Garcia <sarbalap+freshmeat@gmail.com> | 2010-10-31 11:23:35 +0100 | 
| commit | 2546e7679f26147fce3ddb3fc49e869a03ec0a2e (patch) | |
| tree | bfefe3679af60fbacf282d14fe42ebae4e7b9dfc | |
| parent | 0ddf38df1877158fff2d374f5791f8c6db64e98b (diff) | |
Fix metacafe.com and UTF8 output filenames
| -rwxr-xr-x | youtube-dl | 11 | 
1 files changed, 6 insertions, 5 deletions
diff --git a/youtube-dl b/youtube-dl index ba534e10b..ecc99b7c1 100755 --- a/youtube-dl +++ b/youtube-dl @@ -4,6 +4,7 @@  # License: Public domain code  import htmlentitydefs  import httplib +import locale  import math  import netrc  import os @@ -592,7 +593,7 @@ class MetacafeIE(InfoExtractor):  	"""Information Extractor for metacafe.com."""  	_VALID_URL = r'(?:http://)?(?:www\.)?metacafe\.com/watch/([^/]+)/([^/]+)/.*' -	_DISCLAIMER = 'http://www.metacafe.com/disclaimer' +	_DISCLAIMER = 'http://www.metacafe.com/family_filter/'  	_youtube_ie = None  	def __init__(self, youtube_ie, downloader=None): @@ -631,10 +632,10 @@ class MetacafeIE(InfoExtractor):  		# Confirm age  		disclaimer_form = { -			'allowAdultContent': '1', +			'filters': '0',  			'submit': "Continue - I'm over 18",  			} -		request = urllib2.Request('http://www.metacafe.com/watch/', urllib.urlencode(disclaimer_form), std_headers) +		request = urllib2.Request('http://www.metacafe.com/', urllib.urlencode(disclaimer_form), std_headers)  		try:  			self.report_age_confirmation()  			disclaimer = urllib2.urlopen(request).read() @@ -684,7 +685,7 @@ class MetacafeIE(InfoExtractor):  		video_url = '%s?__gda__=%s' % (mediaURL, gdaKey) -		mobj = re.search(r'(?im)<meta name="title" content="Metacafe - ([^"]+)"', webpage) +		mobj = re.search(r'(?im)<title>(.*) - Video</title>', webpage)  		if mobj is None:  			self.to_stderr(u'ERROR: unable to extract title')  			return [None] @@ -909,7 +910,7 @@ if __name__ == '__main__':  			'forcetitle': opts.gettitle,  			'simulate': (opts.simulate or opts.geturl or opts.gettitle),  			'format': opts.format, -			'outtmpl': ((opts.outtmpl is not None and opts.outtmpl.decode()) +			'outtmpl': ((opts.outtmpl is not None and opts.outtmpl.decode(locale.getdefaultlocale()[1]))  				or (opts.usetitle and u'%(stitle)s-%(id)s.%(ext)s')  				or (opts.useliteral and u'%(title)s-%(id)s.%(ext)s')  				or u'%(id)s.%(ext)s'),  | 
