From a89a131636c6e52653975c72769ac00627d032b4 Mon Sep 17 00:00:00 2001 From: zhallgato Date: Sun, 10 Aug 2025 02:09:13 +0200 Subject: [PATCH] [ie/mediaklikk] Fix extractor --- yt_dlp/extractor/mediaklikk.py | 125 +++++++++------------------------ 1 file changed, 34 insertions(+), 91 deletions(-) diff --git a/yt_dlp/extractor/mediaklikk.py b/yt_dlp/extractor/mediaklikk.py index 197e91d1d9..9920539acb 100644 --- a/yt_dlp/extractor/mediaklikk.py +++ b/yt_dlp/extractor/mediaklikk.py @@ -11,121 +11,64 @@ class MediaKlikkIE(InfoExtractor): _VALID_URL = r'''(?x)https?://(?:www\.)? - (?:mediaklikk|m4sport|hirado|petofilive)\.hu/.*?(?:videok?|cikk)/ + (?:mediaklikk|m4sport|hirado)\.hu/.*?(?:videok?|cikk)/ (?:(?P[0-9]{4})/(?P[0-9]{1,2})/(?P[0-9]{1,2})/)? (?P[^/#?_]+)''' _TESTS = [{ - 'url': 'https://mediaklikk.hu/filmajanlo/cikk/az-ajto/', + # mediaklikk + 'url': 'https://mediaklikk.hu/filmajanlo/cikk/heviz-dzsungel-a-viz-alatt/', 'info_dict': { - 'id': '668177', - 'title': 'Az ajtó', - 'display_id': 'az-ajto', + 'id': '8590182', + 'title': 'Hévíz - dzsungel a víz alatt', + 'display_id': 'heviz-dzsungel-a-viz-alatt', 'ext': 'mp4', - 'thumbnail': 'https://cdn.cms.mtv.hu/wp-content/uploads/sites/4/2016/01/vlcsnap-2023-07-31-14h18m52s111.jpg', + 'thumbnail': 'https://cdn.cms.mtv.hu/wp-content/uploads/sites/4/2025/08/2025-008846-M0000-01_3700_cover_09.jpg', }, }, { - # (old) mediaklikk. date in html. - 'url': 'https://mediaklikk.hu/video/hazajaro-delnyugat-bacska-a-duna-menten-palankatol-doroszloig/', + # mediaklikk - date in html + 'url': 'https://mediaklikk.hu/video/hazajaro-bilo-hegyseg-verocei-barangolas-a-drava-menten/', 'info_dict': { - 'id': '4754129', - 'title': 'Hazajáró, DÉLNYUGAT-BÁCSKA – A Duna mentén Palánkától Doroszlóig', + 'id': '8482167', + 'title': 'Hazajáró, Bilo-hegység - Verőcei barangolás a Dráva mentén', + 'display_id': 'hazajaro-bilo-hegyseg-verocei-barangolas-a-drava-menten', 'ext': 'mp4', - 'upload_date': '20210901', - 'thumbnail': 'http://mediaklikk.hu/wp-content/uploads/sites/4/2014/02/hazajarouj_JO.jpg', + 'upload_date': '20250703', + 'thumbnail': 'https://cdn.cms.mtv.hu/wp-content/uploads/sites/4/2025/07/2024-000307-M0010-01_3700_cover_01.jpg', }, - 'skip': 'Webpage redirects to 404 page', - }, { - # mediaklikk. date in html. - 'url': 'https://mediaklikk.hu/video/hazajaro-fabova-hegyseg-kishont-koronaja/', - 'info_dict': { - 'id': '6696133', - 'title': 'Hazajáró, Fabova-hegység - Kishont koronája', - 'display_id': 'hazajaro-fabova-hegyseg-kishont-koronaja', - 'ext': 'mp4', - 'upload_date': '20230903', - 'thumbnail': 'https://mediaklikk.hu/wp-content/uploads/sites/4/2014/02/hazajarouj_JO.jpg', - }, - 'skip': 'Webpage redirects to 404 page', - }, { - # (old) m4sport - 'url': 'https://m4sport.hu/video/2021/08/30/gyemant-liga-parizs/', - 'info_dict': { - 'id': '4754999', - 'title': 'Gyémánt Liga, Párizs', - 'ext': 'mp4', - 'upload_date': '20210830', - 'thumbnail': 'http://m4sport.hu/wp-content/uploads/sites/4/2021/08/vlcsnap-2021-08-30-18h21m20s10-1024x576.jpg', - }, - 'skip': 'Webpage redirects to 404 page', }, { # m4sport - 'url': 'https://m4sport.hu/sportkozvetitesek/video/2023/09/08/atletika-gyemant-liga-brusszel/', + 'url': 'https://m4sport.hu/video/2025/08/07/holnap-kezdodik-a-12-vilagjatekok/', 'info_dict': { - 'id': '6711136', - 'title': 'Atlétika – Gyémánt Liga, Brüsszel', - 'display_id': 'atletika-gyemant-liga-brusszel', + 'id': '8581887', + 'title': 'Holnap kezdődik a 12. Világjátékok', + 'display_id': 'holnap-kezdodik-a-12-vilagjatekok', 'ext': 'mp4', - 'upload_date': '20230908', - 'thumbnail': 'https://m4sport.hu/wp-content/uploads/sites/4/2023/09/vlcsnap-2023-09-08-22h43m18s691.jpg', + 'upload_date': '20250807', + 'thumbnail': 'https://cdn.cms.mtv.hu/wp-content/uploads/sites/4/2025/08/vlcsnap-2025-08-06-20h30m48s817.jpg', }, - 'skip': 'Webpage redirects to 404 page', - }, { - # m4sport with *video/ url and no date - 'url': 'https://m4sport.hu/bl-video/real-madrid-chelsea-1-1/', - 'info_dict': { - 'id': '4492099', - 'title': 'Real Madrid - Chelsea 1-1', - 'display_id': 'real-madrid-chelsea-1-1', - 'ext': 'mp4', - 'thumbnail': 'https://m4sport.hu/wp-content/uploads/sites/4/2021/04/Sequence-01.Still001-1024x576.png', - }, - 'skip': 'Webpage redirects to 404 page', - }, { - # (old) hirado - 'url': 'https://hirado.hu/videok/felteteleket-szabott-a-fovaros/', - 'info_dict': { - 'id': '4760120', - 'title': 'Feltételeket szabott a főváros', - 'ext': 'mp4', - 'thumbnail': 'http://hirado.hu/wp-content/uploads/sites/4/2021/09/vlcsnap-2021-09-01-20h20m37s165.jpg', - }, - 'skip': 'Webpage redirects to video list page', }, { # hirado - 'url': 'https://hirado.hu/belfold/video/2023/09/11/marad-az-eves-elszamolas-a-napelemekre-beruhazo-csaladoknal', + 'url': 'https://hirado.hu/video/2025/08/09/idojaras-jelentes-2025-augusztus-9-2230', 'info_dict': { - 'id': '6716068', - 'title': 'Marad az éves elszámolás a napelemekre beruházó családoknál', - 'display_id': 'marad-az-eves-elszamolas-a-napelemekre-beruhazo-csaladoknal', + 'id': '8592033', + 'title': 'Időjárás-jelentés, 2025. augusztus 9. 22:30', + 'display_id': 'idojaras-jelentes-2025-augusztus-9-2230', 'ext': 'mp4', - 'upload_date': '20230911', - 'thumbnail': 'https://hirado.hu/wp-content/uploads/sites/4/2023/09/vlcsnap-2023-09-11-09h16m09s882.jpg', + 'upload_date': '20250809', + 'thumbnail': 'https://cdn.cms.mtv.hu/wp-content/uploads/sites/4/2025/08/Idojaras-jelentes-35-1.jpg', }, - 'skip': 'Webpage redirects to video list page', }, { - # (old) petofilive - 'url': 'https://petofilive.hu/video/2021/06/07/tha-shudras-az-akusztikban/', + # hirado - subcategory + 'url': 'https://hirado.hu/belfold/video/2025/08/09/nyitott-porta-napok-2025/', 'info_dict': { - 'id': '4571948', - 'title': 'Tha Shudras az Akusztikban', + 'id': '8590581', + 'title': 'Nyitott Porta Napok 2025', + 'display_id': 'nyitott-porta-napok-2025', 'ext': 'mp4', - 'upload_date': '20210607', - 'thumbnail': 'http://petofilive.hu/wp-content/uploads/sites/4/2021/06/vlcsnap-2021-06-07-22h14m23s915-1024x576.jpg', + 'upload_date': '20250809', + 'thumbnail': 'https://cdn.cms.mtv.hu/wp-content/uploads/sites/4/2025/08/vlcsnap-2025-08-09-10h35m01s887.jpg', }, - 'skip': 'Webpage redirects to empty page', - }, { - # petofilive - 'url': 'https://petofilive.hu/video/2023/09/09/futball-fesztival-a-margitszigeten/', - 'info_dict': { - 'id': '6713233', - 'title': 'Futball Fesztivál a Margitszigeten', - 'display_id': 'futball-fesztival-a-margitszigeten', - 'ext': 'mp4', - 'upload_date': '20230909', - 'thumbnail': 'https://petofilive.hu/wp-content/uploads/sites/4/2023/09/Clipboard11-2.jpg', - }, - 'skip': 'Webpage redirects to video list page', }] def _real_extract(self, url): @@ -134,7 +77,7 @@ def _real_extract(self, url): webpage = self._download_webpage(url, display_id) player_data_str = self._html_search_regex( - r'mtva_player_manager\.player\(document.getElementById\(.*\),\s?(\{.*\}).*\);', webpage, 'player data') + r'loadPlayer\(\s*(?:["\'][^"\']+["\']\s*,\s*)?(\{.*?\})\s*\)', webpage, 'player data') player_data = self._parse_json(player_data_str, display_id, urllib.parse.unquote) video_id = str(player_data['contentId']) title = player_data.get('title') or self._og_search_title(webpage, fatal=False) or \