U
    gi                     @   s`   d dl Z 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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gd ddd!d"gZd#Zd$d% Zd&S )'TVAIEZtvapluszTVA+zHhttps?://(?:www\.)?tvaplus\.ca/(?:[^/?#]+/)*[\w-]+-(?P<id>\d+)(?:$|[#?])zFhttps://www.tvaplus.ca/tva/alerte-amber/saison-1/episode-01-1000036619Z 949490fd0e7aee11d0543777611fbd53Z6084352463001Zmp4zMon dernier jourZ5481942443001Z20190907il@t]z$md5:9c0d7fbb90939420c651fd977df90145zre:https://.+\.jpgr   zalerte amberzalerte amber saison 1Z
surdemandegV탤@zSeason 1zAlerte AmberZTVA)idexttitleuploader_idupload_date	timestampdescription	thumbnailepisodeepisode_numbertagsdurationZseasonseason_numberserieschannel)urlmd5	info_dictzJhttps://www.tvaplus.ca/tva/le-baiser-du-barbu/le-baiser-du-barbu-886644190Z6354448043112zLe Baiser du barbuZ20240606iGafz$md5:025b1219086c1cbf4bc27e4e034e8b57ZfullepisodeZ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j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propsZ	pagePropsZstaticEntityZvideoIdnameZurl_transparentZgeo_countriesCA)_typer   ie_keyr   r   r   ZlongDescriptionZdurationMillisi  )ZscaleZknownEntitiesr   Z	videoShowZslugc                 S   s   t d| S )Nz/s(?:ai|ea)son-(\d+)/)research)x r&   8/tmp/pip-unpacked-wheel-q5ljy6pj/yt_dlp/extractor/tva.py<lambda>J       z%TVAIE._real_extract.<locals>.<lambda>r   ZepisodeNumber)r   r   r   r   r   r   )Z	_match_idZ_download_webpageZ_search_nextjs_datar	   getr   _BC_URL_TMPLformatr   r"   r
   str	functoolspartialr   r   )selfr   Z	entity_idZwebpageentityZvideo_idr   r&   r&   r'   _real_extract7   s*    
zTVAIE._real_extractN)	__name__
__module____qualname__ZIE_NAMEZIE_DESCZ
_VALID_URLZ_TESTSr+   r2   r&   r&   r&   r'   r   
   sT   'r   )r.   r#   Z
brightcover   commonr   utilsr   r   r   r	   Zutils.traversalr
   r   r&   r&   r&   r'   <module>   s   