
    V|h                     6    S SK Jr  SSKJrJr   " S S\5      rg)   )InfoExtractor   )int_or_noneparse_durationc            
       X    \ rS rSrSrSSSSSSS	S
SS.S.SSSS.SS./rS rS rS rSr	g)ToonGogglesIE   zbhttps?://(?:www\.)?toongoggles\.com/shows/(?P<show_id>\d+)(?:/[^/]+/episodes/(?P<episode_id>\d+))?zQhttp://www.toongoggles.com/shows/217143/bernard-season-2/episodes/217147/football 18289fc2b951eff6b953a9d8f01e6831217147mp4Football1zvBernard decides to play football in order to be better than Lloyd and tries to beat him no matter how, he even cheats.20160718iQW)idexttitleuploader_iddescriptionupload_date	timestamp)urlmd5	info_dictzGhttp://www.toongoggles.com/shows/227759/om-nom-stories-around-the-world227759zOm Nom Stories Around The World)r   r      )r   r   playlist_mincountc                 T    UR                  SSSSS.5        U R                  SU-   X#S9$ )Nr   g      @)for_ngfor_web	show_metaversionzhttp://api.toongoggles.com/)query)update_download_json)selfactionpage_idr"   s       V/home/james-whalen/.local/lib/python3.13/site-packages/yt_dlp/extractor/toongoggles.py	_call_apiToonGogglesIE._call_api   s=    	
 	 ""#@6#I7"``    c                 f   US   nSUS   USUS   -   UR                  S5      UR                  S5      [        UR                  S5      5      UR                  S	5      [        UR                  S
5      5      UR                  S5      U[        UR                  S5      5      UR                  S5      SS.$ )Nepisode_nameurl_transparent
episode_idzkaltura:513551:entry_idthumbnail_urlr   hms	show_name
season_numepisode_num
categoriesKaltura)_typer   r   r   	thumbnailr   durationseriesseason_numberr/   episodeepisode_numberr6   ie_key)getr   r   )r%   episode_datar   s      r(   _parse_episode_data!ToonGogglesIE._parse_episode_data(   s    ^, '|,$|J'??%))/:'++M:&|'7'7'>?"&&{3()9)9,)GH&**<8),*:*:=*IJ&**<8
 	
r+   c                    U R                  U5      R                  5       u  p#U(       a-  U R                  SUSUS.5      S   S   nU R                  U5      $ U R                  SUSUS.5      n/ nUR	                  S/ 5       H#  nUR                  U R                  U5      5        M%     U R                  XbUR	                  S	5      5      $ )
Nsearchr=   )filterr   objects    getepisodesbyshowi ʚ;)maxshowidr3   )_match_valid_urlgroupsr)   rB   r@   appendplaylist_result)r%   r   show_idr/   rA   	show_dataentriess          r(   _real_extractToonGogglesIE._real_extract<   s    "33C8??A>>(J# A   L ++L99':G!!F I G )i <t77EF !='')--:TUUr+    N)
__name__
__module____qualname____firstlineno__
_VALID_URL_TESTSr)   rB   rS   __static_attributes__rU   r+   r(   r   r      sb    vJb1 T%#
 Y6
  F*a
(Vr+   r   N)commonr   utilsr   r   r   rU   r+   r(   <module>r_      s    !DVM DVr+   