o
    iE                     @   sX   d dl Z ddlmZ ddlmZ ddlmZmZmZm	Z	 ddl
mZ G dd	 d	eZdS )
    N   )BrightcoveNewIE)InfoExtractor   )float_or_noneint_or_nonesmuggle_urlstrip_or_none)traverse_objc                   @   s   e Zd ZdZdZdZddi dddd	d
ddddddddddddddddg dddddddd d!d"d#d$d%d&d	d'dd(d)d*dd'd+d,gd-d'd#d.d/gZd0Zd1d2 Zd3S )4TVAIEtvapluszTVA+zHhttps?://(?:www\.)?tvaplus\.ca/(?:[^/?#]+/)*[\w-]+-(?P<id>\d+)(?:$|[#?])zFhttps://www.tvaplus.ca/tva/alerte-amber/saison-1/episode-01-1000036619 949490fd0e7aee11d0543777611fbd53id6084352463001extmp4titlezMon dernier jouruploader_id5481942443001upload_date20190907	timestampil@t]descriptionz$md5:9c0d7fbb90939420c651fd977df90145	thumbnailzre:https://.+\.jpgepisodeepisode_numberr   tags)zalerte amberzalerte amber saison 1
surdemandedurationgV탤@seasonzSeason 1season_numberserieszAlerte AmberchannelTVA)urlmd5	info_dictzJhttps://www.tvaplus.ca/tva/le-baiser-du-barbu/le-baiser-du-barbu-8866441906354448043112zLe Baiser du barbu20240606iGafz$md5:025b1219086c1cbf4bc27e4e034e8b57fullepisodefilmsg/$@)r   r   r   r   r   r   r   r   r   r   r   r!   r"   )r$   r&   zRhttps://players.brightcove.net/5481942443001/default_default/index.html?videoId={}c                 C   s   |  |}| ||}| ||d d d }|d }t|d}dt| j|ddgit	 |||d	t
|d
thfdtddhfdddthfdddthfddd hdthfdthfdS )Nprops	pagePropsstaticEntityvideoIdnameurl_transparentgeo_countriesCA)_typer$   ie_keyr   r   r   longDescriptiondurationMillisi  )scaleknownEntitiesr"   	videoShowslugc                 S   s   t d| S )Nz/s(?:ai|ea)son-(\d+)/)research)x r>   H/home/ubuntu/.local/lib/python3.10/site-packages/yt_dlp/extractor/tva.py<lambda>I   s    z%TVAIE._real_extract.<locals>.<lambda>r   episodeNumber)r   r   r"   r!   r    r   )	_match_id_download_webpage_search_nextjs_datar	   getr   _BC_URL_TMPLformatr   r4   r
   strr   r   )selfr$   	entity_idwebpageentityvideo_idr   r>   r>   r?   _real_extract6   s*   
zTVAIE._real_extractN)	__name__
__module____qualname__IE_NAMEIE_DESC
_VALID_URL_TESTSrF   rN   r>   r>   r>   r?   r   	   sv    	
'r   )r;   
brightcover   commonr   utilsr   r   r   r	   utils.traversalr
   r   r>   r>   r>   r?   <module>   s    