mirror of
https://github.com/yt-dlp/yt-dlp.git
synced 2024-11-27 10:31:29 +00:00
[ie/rtvslo.si:show] Add extractor (#8418)
Authored by: JSubelj, seproDev Co-authored-by: sepro <4618135+seproDev@users.noreply.github.com>
This commit is contained in:
parent
3690c2f598
commit
92a1c4abae
|
@ -1755,7 +1755,10 @@
|
||||||
RTVETelevisionIE,
|
RTVETelevisionIE,
|
||||||
)
|
)
|
||||||
from .rtvs import RTVSIE
|
from .rtvs import RTVSIE
|
||||||
from .rtvslo import RTVSLOIE
|
from .rtvslo import (
|
||||||
|
RTVSLOIE,
|
||||||
|
RTVSLOShowIE,
|
||||||
|
)
|
||||||
from .rudovideo import RudoVideoIE
|
from .rudovideo import RudoVideoIE
|
||||||
from .rule34video import Rule34VideoIE
|
from .rule34video import Rule34VideoIE
|
||||||
from .rumble import (
|
from .rumble import (
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
import re
|
||||||
|
|
||||||
from .common import InfoExtractor
|
from .common import InfoExtractor
|
||||||
from ..utils import (
|
from ..utils import (
|
||||||
ExtractorError,
|
ExtractorError,
|
||||||
|
@ -6,6 +8,7 @@
|
||||||
traverse_obj,
|
traverse_obj,
|
||||||
unified_timestamp,
|
unified_timestamp,
|
||||||
url_or_none,
|
url_or_none,
|
||||||
|
urljoin,
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
|
@ -21,75 +24,73 @@ class RTVSLOIE(InfoExtractor):
|
||||||
_API_BASE = 'https://api.rtvslo.si/ava/{}/{}?client_id=82013fb3a531d5414f478747c1aca622'
|
_API_BASE = 'https://api.rtvslo.si/ava/{}/{}?client_id=82013fb3a531d5414f478747c1aca622'
|
||||||
SUB_LANGS_MAP = {'Slovenski': 'sl'}
|
SUB_LANGS_MAP = {'Slovenski': 'sl'}
|
||||||
|
|
||||||
_TESTS = [
|
_TESTS = [{
|
||||||
{
|
'url': 'https://www.rtvslo.si/rtv365/arhiv/174842550?s=tv',
|
||||||
'url': 'https://www.rtvslo.si/rtv365/arhiv/174842550?s=tv',
|
'info_dict': {
|
||||||
'info_dict': {
|
'id': '174842550',
|
||||||
'id': '174842550',
|
'ext': 'mp4',
|
||||||
'ext': 'mp4',
|
'release_timestamp': 1643140032,
|
||||||
'release_timestamp': 1643140032,
|
'upload_date': '20220125',
|
||||||
'upload_date': '20220125',
|
'series': 'Dnevnik',
|
||||||
'series': 'Dnevnik',
|
'thumbnail': 'https://img.rtvcdn.si/_up/ava/ava_misc/show_logos/92/dnevnik_3_wide2.jpg',
|
||||||
'thumbnail': 'https://img.rtvcdn.si/_up/ava/ava_misc/show_logos/92/dnevnik_3_wide2.jpg',
|
'description': 'md5:76a18692757aeb8f0f51221106277dd2',
|
||||||
'description': 'md5:76a18692757aeb8f0f51221106277dd2',
|
'timestamp': 1643137046,
|
||||||
'timestamp': 1643137046,
|
'title': 'Dnevnik',
|
||||||
'title': 'Dnevnik',
|
'series_id': '92',
|
||||||
'series_id': '92',
|
'release_date': '20220125',
|
||||||
'release_date': '20220125',
|
'duration': 1789,
|
||||||
'duration': 1789,
|
|
||||||
},
|
|
||||||
}, {
|
|
||||||
'url': 'https://365.rtvslo.si/arhiv/utrip/174843754',
|
|
||||||
'info_dict': {
|
|
||||||
'id': '174843754',
|
|
||||||
'ext': 'mp4',
|
|
||||||
'series_id': '94',
|
|
||||||
'release_date': '20220129',
|
|
||||||
'timestamp': 1643484455,
|
|
||||||
'title': 'Utrip',
|
|
||||||
'duration': 813,
|
|
||||||
'thumbnail': 'https://img.rtvcdn.si/_up/ava/ava_misc/show_logos/94/utrip_1_wide2.jpg',
|
|
||||||
'description': 'md5:77f2892630c7b17bb7a5bb84319020c9',
|
|
||||||
'release_timestamp': 1643485825,
|
|
||||||
'upload_date': '20220129',
|
|
||||||
'series': 'Utrip',
|
|
||||||
},
|
|
||||||
}, {
|
|
||||||
'url': 'https://365.rtvslo.si/arhiv/il-giornale-della-sera/174844609',
|
|
||||||
'info_dict': {
|
|
||||||
'id': '174844609',
|
|
||||||
'ext': 'mp3',
|
|
||||||
'series_id': '106615841',
|
|
||||||
'title': 'Il giornale della sera',
|
|
||||||
'duration': 1328,
|
|
||||||
'series': 'Il giornale della sera',
|
|
||||||
'timestamp': 1643743800,
|
|
||||||
'release_timestamp': 1643745424,
|
|
||||||
'thumbnail': 'https://img.rtvcdn.si/_up/ava/ava_misc/show_logos/il-giornale-della-sera_wide2.jpg',
|
|
||||||
'upload_date': '20220201',
|
|
||||||
'tbr': 128000,
|
|
||||||
'release_date': '20220201',
|
|
||||||
},
|
|
||||||
}, {
|
|
||||||
'url': 'https://365.rtvslo.si/arhiv/razred-zase/148350750',
|
|
||||||
'info_dict': {
|
|
||||||
'id': '148350750',
|
|
||||||
'ext': 'mp4',
|
|
||||||
'title': 'Prvi šolski dan, mozaična oddaja za mlade',
|
|
||||||
'series': 'Razred zase',
|
|
||||||
'series_id': '148185730',
|
|
||||||
'duration': 1481,
|
|
||||||
'upload_date': '20121019',
|
|
||||||
'timestamp': 1350672122,
|
|
||||||
'release_date': '20121019',
|
|
||||||
'release_timestamp': 1350672122,
|
|
||||||
'thumbnail': 'https://img.rtvcdn.si/_up/ava/ava_misc/show_logos/148185730/razred_zase_2014_logo_4d_wide2.jpg',
|
|
||||||
},
|
|
||||||
}, {
|
|
||||||
'url': 'https://4d.rtvslo.si/arhiv/dnevnik/174842550',
|
|
||||||
'only_matching': True,
|
|
||||||
},
|
},
|
||||||
]
|
}, {
|
||||||
|
'url': 'https://365.rtvslo.si/arhiv/utrip/174843754',
|
||||||
|
'info_dict': {
|
||||||
|
'id': '174843754',
|
||||||
|
'ext': 'mp4',
|
||||||
|
'series_id': '94',
|
||||||
|
'release_date': '20220129',
|
||||||
|
'timestamp': 1643484455,
|
||||||
|
'title': 'Utrip',
|
||||||
|
'duration': 813,
|
||||||
|
'thumbnail': 'https://img.rtvcdn.si/_up/ava/ava_misc/show_logos/94/utrip_1_wide2.jpg',
|
||||||
|
'description': 'md5:77f2892630c7b17bb7a5bb84319020c9',
|
||||||
|
'release_timestamp': 1643485825,
|
||||||
|
'upload_date': '20220129',
|
||||||
|
'series': 'Utrip',
|
||||||
|
},
|
||||||
|
}, {
|
||||||
|
'url': 'https://365.rtvslo.si/arhiv/il-giornale-della-sera/174844609',
|
||||||
|
'info_dict': {
|
||||||
|
'id': '174844609',
|
||||||
|
'ext': 'mp3',
|
||||||
|
'series_id': '106615841',
|
||||||
|
'title': 'Il giornale della sera',
|
||||||
|
'duration': 1328,
|
||||||
|
'series': 'Il giornale della sera',
|
||||||
|
'timestamp': 1643743800,
|
||||||
|
'release_timestamp': 1643745424,
|
||||||
|
'thumbnail': 'https://img.rtvcdn.si/_up/ava/ava_misc/show_logos/il-giornale-della-sera_wide2.jpg',
|
||||||
|
'upload_date': '20220201',
|
||||||
|
'tbr': 128000,
|
||||||
|
'release_date': '20220201',
|
||||||
|
},
|
||||||
|
}, {
|
||||||
|
'url': 'https://365.rtvslo.si/arhiv/razred-zase/148350750',
|
||||||
|
'info_dict': {
|
||||||
|
'id': '148350750',
|
||||||
|
'ext': 'mp4',
|
||||||
|
'title': 'Prvi šolski dan, mozaična oddaja za mlade',
|
||||||
|
'series': 'Razred zase',
|
||||||
|
'series_id': '148185730',
|
||||||
|
'duration': 1481,
|
||||||
|
'upload_date': '20121019',
|
||||||
|
'timestamp': 1350672122,
|
||||||
|
'release_date': '20121019',
|
||||||
|
'release_timestamp': 1350672122,
|
||||||
|
'thumbnail': 'https://img.rtvcdn.si/_up/ava/ava_misc/show_logos/148185730/razred_zase_2014_logo_4d_wide2.jpg',
|
||||||
|
},
|
||||||
|
}, {
|
||||||
|
'url': 'https://4d.rtvslo.si/arhiv/dnevnik/174842550',
|
||||||
|
'only_matching': True,
|
||||||
|
}]
|
||||||
|
|
||||||
def _real_extract(self, url):
|
def _real_extract(self, url):
|
||||||
v_id = self._match_id(url)
|
v_id = self._match_id(url)
|
||||||
|
@ -164,3 +165,26 @@ def _real_extract(self, url):
|
||||||
'series': meta.get('showName'),
|
'series': meta.get('showName'),
|
||||||
'series_id': meta.get('showId'),
|
'series_id': meta.get('showId'),
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
class RTVSLOShowIE(InfoExtractor):
|
||||||
|
IE_NAME = 'rtvslo.si:show'
|
||||||
|
_VALID_URL = r'https?://(?:365|4d)\.rtvslo.si/oddaja/[^/?#&]+/(?P<id>\d+)'
|
||||||
|
|
||||||
|
_TESTS = [{
|
||||||
|
'url': 'https://365.rtvslo.si/oddaja/ekipa-bled/173250997',
|
||||||
|
'info_dict': {
|
||||||
|
'id': '173250997',
|
||||||
|
'title': 'Ekipa Bled',
|
||||||
|
},
|
||||||
|
'playlist_count': 18,
|
||||||
|
}]
|
||||||
|
|
||||||
|
def _real_extract(self, url):
|
||||||
|
playlist_id = self._match_id(url)
|
||||||
|
webpage = self._download_webpage(url, playlist_id)
|
||||||
|
|
||||||
|
return self.playlist_from_matches(
|
||||||
|
re.findall(r'<a [^>]*\bhref="(/arhiv/[^"]+)"', webpage),
|
||||||
|
playlist_id, self._html_extract_title(webpage),
|
||||||
|
getter=lambda x: urljoin('https://365.rtvslo.si', x), ie=RTVSLOIE)
|
||||||
|
|
Loading…
Reference in a new issue