]> jfr.im git - yt-dlp.git/commitdiff
[sbs] Fix for movies and livestreams
authorpukkandan <redacted>
Tue, 23 Nov 2021 07:45:49 +0000 (13:15 +0530)
committerpukkandan <redacted>
Tue, 23 Nov 2021 08:00:40 +0000 (13:30 +0530)
Closes #1640

yt_dlp/extractor/sbs.py

index 0a806ee4e4d2f3fa7faecd76a5b4e258d0f87b2e..4090f6385dafdcd4525086db00b3c7833fc1baa3 100644 (file)
 
 class SBSIE(InfoExtractor):
     IE_DESC = 'sbs.com.au'
-    _VALID_URL = r'https?://(?:www\.)?sbs\.com\.au/(?:ondemand(?:/video/(?:single/)?|.*?\bplay=|/watch/)|news/(?:embeds/)?video/)(?P<id>[0-9]+)'
+    _VALID_URL = r'''(?x)
+        https?://(?:www\.)?sbs\.com\.au/(?:
+            ondemand(?:
+                /video/(?:single/)?|
+                /movie/[^/]+/|
+                .*?\bplay=|/watch/
+            )|news/(?:embeds/)?video/
+        )(?P<id>[0-9]+)'''
 
     _TESTS = [{
         # Original URL is handled by the generic IE which finds the iframe:
@@ -46,6 +53,13 @@ class SBSIE(InfoExtractor):
     }, {
         'url': 'https://www.sbs.com.au/ondemand/watch/1698704451971',
         'only_matching': True,
+    }, {
+        'url': 'https://www.sbs.com.au/ondemand/movie/coherence/1469404227931',
+        'only_matching': True,
+    }, {
+        'note': 'Live stream',
+        'url': 'https://www.sbs.com.au/ondemand/video/1726824003663/sbs-24x7-live-stream-nsw',
+        'only_matching': True,
     }]
 
     def _real_extract(self, url):
@@ -75,4 +89,5 @@ def _real_extract(self, url):
             'ie_key': 'ThePlatform',
             'id': video_id,
             'url': smuggle_url(self._proto_relative_url(theplatform_url), {'force_smil_url': True}),
+            'is_live': player_params.get('streamType') == 'live',
         }