Browse Source

[glide] Add new extractor

Added an extractor for glide.me shared messages.  Glide is a movile video messaging services.  You can share the link to the messages easily enough and this would allow you to download and save the actual video.
Damon Timm 11 years ago
parent
commit
a86c73cf80
2 changed files with 34 additions and 0 deletions
  1. 1 0
      youtube_dl/extractor/__init__.py
  2. 33 0
      youtube_dl/extractor/glide.py

+ 1 - 0
youtube_dl/extractor/__init__.py

@@ -134,6 +134,7 @@ from .gamestar import GameStarIE
 from .gametrailers import GametrailersIE
 from .gdcvault import GDCVaultIE
 from .generic import GenericIE
+from .glide import GlideIE
 from .globo import GloboIE
 from .godtube import GodTubeIE
 from .golem import GolemIE

+ 33 - 0
youtube_dl/extractor/glide.py

@@ -0,0 +1,33 @@
+# coding: utf-8
+from __future__ import unicode_literals
+
+from .common import InfoExtractor
+
+
+class GlideIE(InfoExtractor):
+    IE_DESC = 'Glide mobile video messages (glide.me)'
+    _VALID_URL = r'https?://share\.glide\.me/(?P<id>[A-Za-z0-9\-=_+]+)'
+    _TEST = {
+        'url': 'http://share.glide.me/UZF8zlmuQbe4mr+7dCiQ0w==',
+        'md5': '4466372687352851af2d131cfaa8a4c7',
+        'info_dict': {
+            'id': 'UZF8zlmuQbe4mr+7dCiQ0w==',
+            'ext': 'mp4',
+            'title': 'Damon Timm\'s Glide message',
+            'thumbnail' : 'http://dk608k4lm7m9j.cloudfront.net/3ee7da5af87065a1eeb8c6c9a864ba5b_2.jpg'
+        }
+    }
+
+    def _real_extract(self, url):
+        video_id = self._match_id(url)
+        webpage = self._download_webpage(url, video_id)
+        title = self._html_search_regex(r'<title>(.*?)</title>', webpage, 'title')
+        video_url = self._search_regex(r'<source src="(.*?)" type="video/mp4">', webpage, 'video_url')
+        thumbnail_url = self._search_regex(r'<img id="video-thumbnail" src="(.*?)" alt="Video thumbnail">', webpage, 'thumbnail_url')
+
+        return {
+            'id': video_id,
+            'title': title,
+            'url' : 'http:' + video_url,
+            'thumbnail' : 'http:' + thumbnail_url
+        }