summary refs log tree commit diff
diff options
context:
space:
mode:
authorrzhxeo <rzhxeot7z81b4700@mailcatch.com>2013-12-30 06:15:02 +0100
committerrzhxeo <rzhxeot7z81b4700@mailcatch.com>2013-12-30 06:15:02 +0100
commit19dab5e6cc9e0a7a726af8bb67ca30801c2107b0 (patch)
tree1c417757bd6d1e3626da12e5bc952d61f0c808be
parentc0f9969b9e297a2c4ceb87017081792e13f4cdc6 (diff)
downloadyoutube-dl-19dab5e6cc9e0a7a726af8bb67ca30801c2107b0.tar.gz
youtube-dl-19dab5e6cc9e0a7a726af8bb67ca30801c2107b0.tar.xz
youtube-dl-19dab5e6cc9e0a7a726af8bb67ca30801c2107b0.zip
[GenericIE] Outsource embedded blip.tv player video id extraction to BlipTVIE and fix minor errors in RegEx
-rw-r--r--youtube_dl/extractor/generic.py12
1 files changed, 4 insertions, 8 deletions
diff --git a/youtube_dl/extractor/generic.py b/youtube_dl/extractor/generic.py
index 7a14c98f9..f1b152f62 100644
--- a/youtube_dl/extractor/generic.py
+++ b/youtube_dl/extractor/generic.py
@@ -271,16 +271,12 @@ class GenericIE(InfoExtractor):
             }
 
         # Look for embedded blip.tv player
-        mobj = re.search(r'<meta\s[^>]*https?://api.blip.tv/\w+/redirect/\w+/(\d+)', webpage)
+        mobj = re.search(r'<meta\s[^>]*https?://api\.blip\.tv/\w+/redirect/\w+/(\d+)', webpage)
         if mobj:
-            return self.url_result('http://blip.tv/seo/-'+mobj.group(1), 'BlipTV')
-        mobj = re.search(r'<(?:iframe|embed|object)\s[^>]*https?://(?:\w+\.)?blip.tv/(?:play/|api\.swf#)([a-zA-Z0-9]+)', webpage)
+            return self.url_result('http://blip.tv/a/a-'+mobj.group(1), 'BlipTV')
+        mobj = re.search(r'<(?:iframe|embed|object)\s[^>]*(https?://(?:\w+\.)?blip\.tv/(?:play/|api\.swf#)[a-zA-Z0-9]+)', webpage)
         if mobj:
-            player_url = 'http://blip.tv/play/%s.x?p=1' % mobj.group(1)
-            player_page = self._download_webpage(player_url, mobj.group(1))
-            blip_video_id = self._search_regex(r'data-episode-id="(\d+)', player_page, u'blip_video_id', fatal=False)
-            if blip_video_id:
-                return self.url_result('http://blip.tv/seo/-'+blip_video_id, 'BlipTV')
+            return self.url_result(mobj.group(1), 'BlipTV')
 
         # Look for Bandcamp pages with custom domain
         mobj = re.search(r'<meta property="og:url"[^>]*?content="(.*?bandcamp\.com.*?)"', webpage)