X-Git-Url: http://git.cielonegro.org/gitweb.cgi?a=blobdiff_plain;f=youtube_dl%2Fextractor%2Fntv.py;h=dfbcb792ca607c45f05d8183b0791bee8782ec80;hb=29e3e682afd3a8a6bde0c5e8d7e3d0df75f17380;hp=e998d156e3f43a25adf8c31c8e904d3aa96590d1;hpb=8f6562448c7fe1ce6723300ed46c3f51a92c52ac;p=youtube-dl.git diff --git a/youtube_dl/extractor/ntv.py b/youtube_dl/extractor/ntv.py index e998d156e..dfbcb792c 100644 --- a/youtube_dl/extractor/ntv.py +++ b/youtube_dl/extractor/ntv.py @@ -5,7 +5,7 @@ import re from .common import InfoExtractor from ..utils import ( - RegexNotFoundError, + ExtractorError, unescapeHTML ) @@ -59,11 +59,11 @@ class NTVIE(InfoExtractor): { 'url': 'http://www.ntv.ru/kino/Koma_film', 'info_dict': { - 'id': '750783', + 'id': '758100', 'ext': 'flv', - 'title': 'Остросюжетный фильм «Кома» — 4 апреля вечером на НТВ', - 'description': 'Остросюжетный фильм «Кома» — 4 апреля вечером на НТВ', - 'duration': 28, + 'title': 'Остросюжетный фильм «Кома»', + 'description': 'Остросюжетный фильм «Кома»', + 'duration': 5592, }, 'params': { # rtmp download @@ -98,16 +98,15 @@ class NTVIE(InfoExtractor): page = self._download_webpage(url, video_id, 'Downloading page') - def extract(patterns, name, page, fatal=False): - for pattern in patterns: - mobj = re.search(pattern, page) - if mobj: - return mobj.group(1) - if fatal: - raise RegexNotFoundError(u'Unable to extract %s' % name) - return None + for pattern in self._VIDEO_ID_REGEXES: + mobj = re.search(pattern, page) + if mobj: + break - video_id = extract(self._VIDEO_ID_REGEXES, 'video id', page, fatal=True) + if not mobj: + raise ExtractorError('No media links available for %s' % video_id) + + video_id = mobj.group(1) player = self._download_xml('http://www.ntv.ru/vi%s/' % video_id, video_id, 'Downloading video XML') title = unescapeHTML(player.find('./data/title').text)