|
|
@ -10,7 +10,14 @@ from ..utils import (
|
|
|
|
|
|
|
|
|
|
|
|
class SBSIE(InfoExtractor):
|
|
|
|
class SBSIE(InfoExtractor):
|
|
|
|
IE_DESC = 'sbs.com.au'
|
|
|
|
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 = [{
|
|
|
|
_TESTS = [{
|
|
|
|
# Original URL is handled by the generic IE which finds the iframe:
|
|
|
|
# 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',
|
|
|
|
'url': 'https://www.sbs.com.au/ondemand/watch/1698704451971',
|
|
|
|
'only_matching': True,
|
|
|
|
'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):
|
|
|
|
def _real_extract(self, url):
|
|
|
@ -75,4 +89,5 @@ class SBSIE(InfoExtractor):
|
|
|
|
'ie_key': 'ThePlatform',
|
|
|
|
'ie_key': 'ThePlatform',
|
|
|
|
'id': video_id,
|
|
|
|
'id': video_id,
|
|
|
|
'url': smuggle_url(self._proto_relative_url(theplatform_url), {'force_smil_url': True}),
|
|
|
|
'url': smuggle_url(self._proto_relative_url(theplatform_url), {'force_smil_url': True}),
|
|
|
|
|
|
|
|
'is_live': player_params.get('streamType') == 'live',
|
|
|
|
}
|
|
|
|
}
|
|
|
|