Browse Source

[bambuser] Capture and output error message (#5478)

totalwebcasting
Sergey M․ 10 years ago
parent
commit
ae8953409e
1 changed files with 17 additions and 12 deletions
  1. +17
    -12
      youtube_dl/extractor/bambuser.py

+ 17
- 12
youtube_dl/extractor/bambuser.py View File

@ -1,13 +1,11 @@
from __future__ import unicode_literals from __future__ import unicode_literals
import re import re
import json
import itertools import itertools
from .common import InfoExtractor from .common import InfoExtractor
from ..compat import (
compat_urllib_request,
)
from ..compat import compat_urllib_request
from ..utils import ExtractorError
class BambuserIE(InfoExtractor): class BambuserIE(InfoExtractor):
@ -39,17 +37,24 @@ class BambuserIE(InfoExtractor):
info = self._download_json( info = self._download_json(
'http://player-c.api.bambuser.com/getVideo.json?api_key=%s&vid=%s' 'http://player-c.api.bambuser.com/getVideo.json?api_key=%s&vid=%s'
% (self._API_KEY, video_id), video_id)['result']
% (self._API_KEY, video_id), video_id)
error = info.get('error')
if error:
raise ExtractorError(
'%s returned error: %s' % (self.IE_NAME, error), expected=True)
result = info['result']
return { return {
'id': video_id, 'id': video_id,
'title': info['title'],
'url': info['url'],
'thumbnail': info.get('preview'),
'duration': int(info['length']),
'view_count': int(info['views_total']),
'uploader': info['username'],
'uploader_id': info['owner']['uid'],
'title': result['title'],
'url': result['url'],
'thumbnail': result.get('preview'),
'duration': int(result['length']),
'view_count': int(result['views_total']),
'uploader': result['username'],
'uploader_id': result['owner']['uid'],
} }


Loading…
Cancel
Save