U
    $Pf                     @   sD   d dl mZ d dlZddlmZ ddlmZmZ G dd deZdS )	    )unicode_literalsN   )InfoExtractor   )int_or_noneparse_durationc                
   @   sV   e Zd ZdZdddddddd	d
ddddddddgZdd Zdd Zdd ZdS )ToonGogglesIEzbhttps?://(?:www\.)?toongoggles\.com/shows/(?P<show_id>\d+)(?:/[^/]+/episodes/(?P<episode_id>\d+))?zQhttp://www.toongoggles.com/shows/217143/bernard-season-2/episodes/217147/footballZ 18289fc2b951eff6b953a9d8f01e6831Z217147Zmp4ZFootball1zvBernard decides to play football in order to be better than Lloyd and tries to beat him no matter how, he even cheats.Z20160718iQW)idexttitleZuploader_iddescriptionZupload_date	timestamp)urlmd5	info_dictzGhttp://www.toongoggles.com/shows/227759/om-nom-stories-around-the-worldZ227759zOm Nom Stories Around The World)r
   r      )r   r   Zplaylist_mincountc                 C   s(   | ddddd | jd| ||dS )Nr   g      @)Zfor_ngZfor_webZ	show_metaversionzhttp://api.toongoggles.com/)query)updateZ_download_json)selfactionZpage_idr    r   D/tmp/pip-unpacked-wheel-7zdooeg3/youtube_dl/extractor/toongoggles.py	_call_api$   s    zToonGogglesIE._call_apic                 C   sr   |d }d|d |d|d  | d| dt| d| d	t| d
| d|t| d| dddS )NZepisode_nameZurl_transparent
episode_idzkaltura:513551:Zentry_idZthumbnail_urlr   Zhms	show_nameZ
season_numZepisode_num
categoriesZKaltura)_typer
   r   r   Z	thumbnailr   durationZseriesZseason_numberr   episodeZepisode_numberr   Zie_key)getr   r   )r   episode_datar   r   r   r   _parse_episode_data-   s     
z!ToonGogglesIE._parse_episode_datac                 C   s   t | j| \}}|r@| d|d|dd d }| |S | d|d|d}g }|dg D ]}|| | qd| |||d	S d S )
Nsearchr    )filterr
   Zobjectsr   Zgetepisodesbyshowi ʚ;)maxZshowidr   )	rematch
_VALID_URLgroupsr   r#   r!   appendZplaylist_result)r   r   Zshow_idr   r"   Z	show_dataentriesr   r   r   _real_extractA   s&    
zToonGogglesIE._real_extractN)__name__
__module____qualname__r)   Z_TESTSr   r#   r-   r   r   r   r   r      s,   	r   )	
__future__r   r'   commonr   utilsr   r   r   r   r   r   r   <module>   s   