From 9ae7df9a22b29e2f81825230c9bba7d444190de0 Mon Sep 17 00:00:00 2001 From: Francisco Pombal Date: Thu, 18 Jun 2026 23:05:08 +0100 Subject: [PATCH] [ie/tviplayer] Fix extractor (#16527) Closes #13132 Authored by: FranciscoPombal --- yt_dlp/extractor/tviplayer.py | 34 ++++++++++++++-------------------- 1 file changed, 14 insertions(+), 20 deletions(-) diff --git a/yt_dlp/extractor/tviplayer.py b/yt_dlp/extractor/tviplayer.py index 17f8535099..e0ebc2e516 100644 --- a/yt_dlp/extractor/tviplayer.py +++ b/yt_dlp/extractor/tviplayer.py @@ -1,5 +1,6 @@ from .common import InfoExtractor -from ..utils import traverse_obj +from ..utils import int_or_none, js_to_json +from ..utils.traversal import traverse_obj class TVIPlayerIE(InfoExtractor): @@ -11,21 +12,10 @@ class TVIPlayerIE(InfoExtractor): 'ext': 'mp4', 'duration': 4167, 'title': 'Jornal das 8 - 26 de dezembro de 2021', - 'thumbnail': 'https://www.iol.pt/multimedia/oratvi/multimedia/imagem/id/61c8ee630cf2cc58e7d98d9f/', + 'thumbnail': 'https://img.iol.pt/image/id/61c8ee630cf2cc58e7d98d9f/', 'season_number': 8, 'season': 'Season 8', }, - }, { - 'url': 'https://tviplayer.iol.pt/programa/isabel/62b471090cf26256cd2a8594/video/62be445f0cf2ea4f0a5218e5', - 'info_dict': { - 'id': '62be445f0cf2ea4f0a5218e5', - 'ext': 'mp4', - 'duration': 3255, - 'season': 'Season 1', - 'title': 'Isabel - Episódio 1', - 'thumbnail': 'https://www.iol.pt/multimedia/oratvi/multimedia/imagem/id/62beac200cf2f9a86eab856b/', - 'season_number': 1, - }, }, { # no /programa/ 'url': 'https://tviplayer.iol.pt/video/62c4131c0cf2f9a86eac06bb', @@ -33,10 +23,8 @@ class TVIPlayerIE(InfoExtractor): 'id': '62c4131c0cf2f9a86eac06bb', 'ext': 'mp4', 'title': 'David e Mickael Carreira respondem: «Qual é o próximo a ser pai?»', - 'thumbnail': 'https://www.iol.pt/multimedia/oratvi/multimedia/imagem/id/62c416490cf2ea367d4433fd/', - 'season': 'Season 2', + 'thumbnail': 'https://img.iol.pt/image/id/62c416490cf2ea367d4433fd/', 'duration': 148, - 'season_number': 2, }, }, { # episodio url @@ -46,9 +34,11 @@ class TVIPlayerIE(InfoExtractor): 'ext': 'mp4', 'season': 'Season 1', 'title': 'Quem denunciou Pedro?', - 'thumbnail': 'https://www.iol.pt/multimedia/oratvi/multimedia/imagem/id/62eda30b0cf2ea367d48973b/', + 'thumbnail': 'https://img.iol.pt/image/id/62eda30b0cf2ea367d48973b/', 'duration': 1250, 'season_number': 1, + 'episode_number': 187, + 'episode': 'Episode 187', }, }] @@ -62,7 +52,8 @@ class TVIPlayerIE(InfoExtractor): webpage = self._download_webpage(url, video_id) json_data = self._search_json( - r'