Răsfoiți Sursa

[generic] Add support for LazyYT embeds (Fixes #4306)

Philipp Hagemeister 10 ani în urmă
părinte
comite
65f3a228b1
1 a modificat fișierele cu 14 adăugiri și 0 ștergeri
  1. 14 0
      youtube_dl/extractor/generic.py

+ 14 - 0
youtube_dl/extractor/generic.py

@@ -445,6 +445,14 @@ class GenericIE(InfoExtractor):
                 'title': 'Rosetta #CometLanding webcast HL 10',
                 'title': 'Rosetta #CometLanding webcast HL 10',
             }
             }
         },
         },
+        # LazyYT
+        {
+            'url': 'http://discourse.ubuntu.com/t/unity-8-desktop-mode-windows-on-mir/1986',
+            'info_dict': {
+                'title': 'Unity 8 desktop-mode windows on Mir! - Ubuntu Discourse',
+            },
+            'playlist_mincount': 2,
+        }
     ]
     ]
 
 
     def report_following_redirect(self, new_url):
     def report_following_redirect(self, new_url):
@@ -702,6 +710,12 @@ class GenericIE(InfoExtractor):
             return _playlist_from_matches(
             return _playlist_from_matches(
                 matches, lambda m: unescapeHTML(m[1]))
                 matches, lambda m: unescapeHTML(m[1]))
 
 
+        # Look for lazyYT YouTube embed
+        matches = re.findall(
+            r'class="lazyYT" data-youtube-id="([^"]+)"', webpage)
+        if matches:
+            return _playlist_from_matches(matches, lambda m: unescapeHTML(m))
+
         # Look for embedded Dailymotion player
         # Look for embedded Dailymotion player
         matches = re.findall(
         matches = re.findall(
             r'<iframe[^>]+?src=(["\'])(?P<url>(?:https?:)?//(?:www\.)?dailymotion\.com/embed/video/.+?)\1', webpage)
             r'<iframe[^>]+?src=(["\'])(?P<url>(?:https?:)?//(?:www\.)?dailymotion\.com/embed/video/.+?)\1', webpage)