[ntv] Simplify
authorSergey M․ <dstftw@gmail.com>
Sat, 29 Mar 2014 08:55:03 +0000 (15:55 +0700)
committerSergey M․ <dstftw@gmail.com>
Sat, 29 Mar 2014 08:55:03 +0000 (15:55 +0700)
youtube_dl/extractor/ntv.py

index e998d156e3f43a25adf8c31c8e904d3aa96590d1..8447a9b86a05d62c11b79f246d281819ba5e08fe 100644 (file)
@@ -5,7 +5,7 @@ import re
 
 from .common import InfoExtractor
 from ..utils import (
-    RegexNotFoundError,
+    ExtractorError,
     unescapeHTML
 )
 
@@ -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)