[bliptv] Simplify (From #2000)

This commit is contained in:
Philipp Hagemeister 2013-12-23 04:31:38 +01:00
parent 196938835a
commit 466617f539
1 changed files with 39 additions and 40 deletions

View File

@ -70,13 +70,14 @@ def _real_extract(self, url):
info = None info = None
urlh = self._request_webpage(request, None, False, urlh = self._request_webpage(request, None, False,
u'unable to download video info webpage') u'unable to download video info webpage')
if urlh.headers.get('Content-Type', '').startswith('video/'): # Direct download if urlh.headers.get('Content-Type', '').startswith('video/'): # Direct download
basename = url.split('/')[-1] basename = url.split('/')[-1]
title,ext = os.path.splitext(basename) title,ext = os.path.splitext(basename)
title = title.decode('UTF-8') title = title.decode('UTF-8')
ext = ext.replace('.', '') ext = ext.replace('.', '')
self.report_direct_download(title) self.report_direct_download(title)
info = { return {
'id': title, 'id': title,
'url': url, 'url': url,
'uploader': None, 'uploader': None,
@ -85,7 +86,7 @@ def _real_extract(self, url):
'ext': ext, 'ext': ext,
'urlhandle': urlh 'urlhandle': urlh
} }
if info is None: # Regular URL
try: try:
json_code_bytes = urlh.read() json_code_bytes = urlh.read()
json_code = json_code_bytes.decode('utf-8') json_code = json_code_bytes.decode('utf-8')
@ -111,7 +112,7 @@ def _real_extract(self, url):
raise ValueError('Can not determine filename extension') raise ValueError('Can not determine filename extension')
ext = umobj.group(1) ext = umobj.group(1)
info = { return {
'id': compat_str(data['item_id']), 'id': compat_str(data['item_id']),
'url': video_url, 'url': video_url,
'uploader': data['display_name'], 'uploader': data['display_name'],
@ -124,11 +125,9 @@ def _real_extract(self, url):
'player_url': data['embedUrl'], 'player_url': data['embedUrl'],
'user_agent': 'iTunes/10.6.1', 'user_agent': 'iTunes/10.6.1',
} }
except (ValueError,KeyError) as err: except (ValueError, KeyError) as err:
raise ExtractorError(u'Unable to parse video information: %s' % repr(err)) raise ExtractorError(u'Unable to parse video information: %s' % repr(err))
return [info]
class BlipTVUserIE(InfoExtractor): class BlipTVUserIE(InfoExtractor):
"""Information Extractor for blip.tv users.""" """Information Extractor for blip.tv users."""