====== Telemadrid ====== En un vídeo de Telemadrid, pulsar compartir y aparece "Código de incustración" Descargamos el vídeo con el comando: yt-dlp '//players.brightcove.net/6416060453001/UQ181zOkpx_default/index.html?videoId=6401201067112' ===== Método 1 ===== Directo con yt-dlp (recomendado) Solo necesitas el Brightcove Account ID y el Video ID. Se obtienen así: 1. Abre la página del video en Chrome/Firefox y abre DevTools (F12) 2. Ve a la pestaña Network (Red) 3. Filtra por "galgo-telemadrid.galgo.tv/video/" 4. Recarga la página 5. Busca una petición como: galgo-telemadrid.galgo.tv/video/madrid-directo-15072026?version=2... 6. En la respuesta JSON busca el campo "brightcoveId" Una vez tienes el accountId y videoId: # El accountId de Telemadrid es siempre 6416060453001 yt-dlp "https://players.brightcove.net/6416060453001/default_default/index.html?videoId=6401235687112" ===== Método 2 ===== Método 2: con Playwright (si quieres automatizar) from playwright.sync_api import sync_playwright with sync_playwright() as p: browser = p.chromium.launch(headless=True) page = browser.new_page() # Interceptar respuestas de la API video_data = {} def handle_response(response): if '/video/' in response.url and '/uri' not in response.url: video_data['info'] = response.json() if '/video/' in response.url and '/uri' in response.url: video_data['uri'] = response.json() page.on('response', lambda r: handle_response(r)) page.goto('https://www.tlmad.es/content/madrid-directo-1/madrid-directo-15072026/play', wait_until='networkidle') brightcove_id = video_data['info']['extraData']['brightcoveId'] hls_url = video_data['uri']['uris']['hls']['uri'] mp4_url = video_data['uri']['uris']['master'] # Descargar con yt-dlp # o descargar directo: wget "$mp4_url" -O video.mp4 Estructura de las URLs: ^Paso ^URL ^Descripción^ |1 |galgo-telemadrid.galgo.tv/video/{slug}?version=2 |Obtiene metadatos del video (contiene brightcoveId)| |2 |galgo-telemadrid.galgo.tv/video/{brightcoveId}/uri |Obtiene las URLs de reproducción (HLS, MP4, DASH)| |3 |Brightcove player |players.brightcove.net/{accountId}/default_default/index.html?videoId={videoId}| Resumen: abre DevTools → Network → filtra por galgo-telemadrid.galgo.tv/video/ → del primer JSON sacas el brightcoveId → yt-dlp "https://players.brightcove.net/6416060453001/default_default/index.html?videoId=BRIGHTCOVE_ID".