]> jfr.im git - yt-dlp.git/blobdiff - yt_dlp/extractor/channel9.py
[extractor] Deprecate `_sort_formats`
[yt-dlp.git] / yt_dlp / extractor / channel9.py
index 90024dbbadf2c08af69de3fb192267c118091c71..a88474060a745f9b9b788e8a7e839f8f15b58d3a 100644 (file)
@@ -1,5 +1,3 @@
-from __future__ import unicode_literals
-
 import re
 
 from .common import InfoExtractor
@@ -16,6 +14,7 @@ class Channel9IE(InfoExtractor):
     IE_DESC = 'Channel 9'
     IE_NAME = 'channel9'
     _VALID_URL = r'https?://(?:www\.)?(?:channel9\.msdn\.com|s\.ch9\.ms)/(?P<contentpath>.+?)(?P<rss>/RSS)?/?(?:[?#&]|$)'
+    _EMBED_REGEX = [r'<iframe[^>]+src=["\'](?P<url>https?://channel9\.msdn\.com/(?:[^/]+/)+)player\b']
 
     _TESTS = [{
         'url': 'http://channel9.msdn.com/Events/TechEd/Australia/2013/KOS002',
@@ -80,12 +79,6 @@ class Channel9IE(InfoExtractor):
 
     _RSS_URL = 'http://channel9.msdn.com/%s/RSS'
 
-    @staticmethod
-    def _extract_urls(webpage):
-        return re.findall(
-            r'<iframe[^>]+src=["\'](https?://channel9\.msdn\.com/(?:[^/]+/)+)player\b',
-            webpage)
-
     def _extract_list(self, video_id, rss_url=None):
         if not rss_url:
             rss_url = self._RSS_URL % video_id
@@ -192,7 +185,6 @@ def quality(quality_id, format_url):
             if not formats and not slides and not zip_file:
                 self.raise_no_formats(
                     'None of recording, slides or zip are available for %s' % content_path)
-            self._sort_formats(formats)
 
             subtitles = {}
             for caption in content_data.get('Captions', []):