U
    Mf                     @   sd   d dl Z d dl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G d	d
 d
eZdS )    N   )InfoExtractor   )float_or_noneint_or_nonesmuggle_urlstrip_or_none)traverse_objc                   @   sF   e Zd ZdZdddddddd	d
didddddgZdZdd ZdS )TVAIEz.https?://videos?\.tva\.ca/details/_(?P<id>\d+)z,https://videos.tva.ca/details/_5596811470001Z5596811470001mp4u5   Un extrait de l'épisode du dimanche 8 octobre 2017 !5481942443001Z20171003i)Y)idexttitleuploader_idupload_date	timestampZskip_downloadTzHTTP Error 404: Not Found)url	info_dictparamsskipz+https://video.tva.ca/details/_5596811470001r   Zonly_matchingzQhttp://players.brightcove.net/5481942443001/default_default/index.html?videoId=%sc                 C   s*   |  |}d|t| j| ddgiddS )Nurl_transparentZgeo_countriesCAZBrightcoveNew)_typer   r   ie_key)	_match_idr   BRIGHTCOVE_URL_TEMPLATE)selfr   video_id r    8/tmp/pip-unpacked-wheel-zk9bgjdq/yt_dlp/extractor/tva.py_real_extract    s    
zTVAIE._real_extractN)__name__
__module____qualname__
_VALID_URL_TESTSr   r"   r    r    r    r!   r
   	   s(   
 r
   c                   @   sV   e 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gZdd ZdS )QubIEz<https?://(?:www\.)?qub\.ca/(?:[^/]+/)*[0-9a-z-]+-(?P<id>\d+)zJhttps://www.qub.ca/tvaplus/tva/alerte-amber/saison-1/episode-01-1000036619Z 949490fd0e7aee11d0543777611fbd53Z6084352463001r   u   Ép 01. Mon dernier jourr   Z20190907il@t]z$md5:9c0d7fbb90939420c651fd977df90145zre:https://.+\.jpgr   zalerte amberzalerte amber saison 1Z
surdemandegV탤@zSeason 1zAlerte AmberZTVA)r   r   r   r   r   r   descriptionZ	thumbnailepisodeepisode_numbertagsdurationZseasonseason_numberserieschannel)r   md5r   zMhttps://www.qub.ca/tele/video/lcn-ca-vous-regarde-rev-30s-ap369664-1009357943Tr   c                 C   s   |  |}| ||}| ||d d d d }|d }t|d}dd| 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initialPropsZ	pagePropsZfallbackDataZvideoIdnamer   zhttps://videos.tva.ca/details/_)r   r   r   r   r   r*   ZlongDescriptionZdurationMillisi  )ZscaleZknownEntitiesr0   Z	videoShowZslugc                 S   s   t d| S )Nz/s(?:ai|ea)son-(\d+)/)research)xr    r    r!   <lambda>\       z%QubIE._real_extract.<locals>.<lambda>r   ZepisodeNumber)r)   r-   r0   r/   r.   r+   )r   Z_download_webpageZ_search_nextjs_datar   getr
   r   r	   str	functoolspartialr   r   )r   r   Z	entity_idZwebpageentityr   r*   r    r    r!   r"   I   s*    
zQubIE._real_extractN)r#   r$   r%   r&   r'   r"   r    r    r    r!   r(   +   s4   r(   )r;   r4   commonr   utilsr   r   r   r   Zutils.traversalr	   r
   r(   r    r    r    r!   <module>   s   "