
    bi!                         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
mZmZ ddlmZmZ  G d d	e          Z G d
 de          Z G d de          ZdS )    N   )StreaksBaseIE   )HEADRequest)InAdvancePagedList
clean_html
js_to_jsonparse_iso8601parse_qsstr_or_none)requiretraverse_objc                   "    e Zd ZdZdZdZddZdS )LocipoBaseIEzhttps://web-api.locipo.jphttps://locipo.jpz([\da-f]{8}(?:-[\da-f]{4}){3}-[\da-f]{12}Tc                 Z    |                      | j         d| |d| dd| d|          S )N/zDownloading z	 API JSONzUnable to download fatal)_download_json	_API_BASE)selfpathitem_idnoter   s        Q/DATA/AppData/hermes/venv/lib/python3.11/site-packages/yt_dlp/extractor/locipo.py	_call_apizLocipoBaseIE._call_api   sS    ""~&&&&*4***1$111	 #   	    N)T)__name__
__module____qualname__r   	_BASE_URL_UUID_REr    r   r   r   r      s7        +I#I:H     r   r   c                      e Zd Zdej         ddej         dgZdi ddddd	d
dddddddddeddddddddddddd d!d"d#d$d%d&d'id(d)i dd*ddd	d+dd,dd-dddddedd.dd/dd0dd1dd2ddd d3d"d#d$d4d&d'id(d5d6d7d8d9d:d;i dd<ddd	d=dd>dd?dddddedd@ddAddBddCddDddd dEd"d#d$dFd&d'idGdHidIgZdJ ZdKS )LLocipoIEz$https?://locipo\.jp/creative/(?P<id>)z2https?://locipo\.jp/embed/?\?(?:[^#]+&)?id=(?P<id>z?https://locipo.jp/creative/fb5ffeaa-398d-45ce-bb49-0e221b5f94f1idz$fb5ffeaa-398d-45ce-bb49-0e221b5f94f1extmp4titleuB   リアルカレカノ#4 ～伊達さゆりと勉強しよっ？～descriptionz$md5:70a40c202f3fb7946b61e55fa015094c
display_id 5a2947fe596441f5bab88a61b0432d0dlive_statusnot_livemodified_datezre:\d{8}modified_timestamprelease_timestampifrelease_date20240330seriesu   リアルカレカノ	series_id1142tagszcount:4	thumbnailzre:https?://.+\.(?:jpg|png)	timestampiWvhupload_date20250904uploaderu   東海テレビuploader_idlocipo-prod)url	info_dictz@https://locipo.jp/embed/?id=71a334a0-2b25-406f-9d96-88f341f571c2z$71a334a0-2b25-406f-9d96-88f341f571c2u?   #1 オーディション／ゲスト伊藤美来、豊田萌絵z$md5:5bbcf532474700439cf56ceb6a15630e 0ab32634b884499a84adb25de844c551i gh20250704u6   声優ラジオのウラカブリ～Locipo出張所～1454zcount:6iּhu   テレビ愛知zihttps://locipo.jp/creative/bff9950d-229b-4fe9-911a-7fa71a232f35?list=69a5b15c-901f-4828-a336-30c0de7612d3z$69a5b15c-901f-4828-a336-30c0de7612d3u7   見て・乗って・語りたい。 東海の鉄道沼r(   r+      rA   rB   playlist_mincountzihttps://locipo.jp/creative/a0751a7f-c7dd-4a10-a7f1-e12720bdf16c?list=006cff3f-ba74-42f0-b4fd-241486ebda2bz$a0751a7f-c7dd-4a10-a7f1-e12720bdf16cu   #839 人間真空パックz$md5:9fe190333b6975c5001c8c9cbe20d276 c2b4c9f4a6d648bd8e3c320e384b9d56ih20250503u'   でんじろう先生のはぴエネ！202zcount:3i%Shu   中京テレビ
noplaylistT)rA   rB   paramsc                    |                      |          }t          t          |          ddt          hf          }|                     ||          r%|                     | j         d| t                    S |                     d| |d          }t          |dt          ht          d          hf          }| 
                    ||          }|                     d|d	|t          
          }t          |ddt          ht          d          hf          }i |                     d|d|d          t          |dt          hfdt          ht          fdt           hfdt          hd hdt          j        ht          fddt          ht          fd          t          |ddt          ht          fdt$          hfdf          d|iS )Nlistz
/playlist/z
creatives/	Creativesmedia_idzStreaks media IDzwindow\.__NUXT__\.config\s*=config)transform_sourcepublicstreaksVodPlaybackApiKeyzapi keyr@   r   )OriginzX-Streaks-Api-Key)headersnamer,   publication_started_atkeywordc                 ,    |                      d          S )N,)split)xs    r   <lambda>z(LocipoIE._real_extract.<locals>.<lambda>   s    QWWS\\ r   .company)r+   r,   r3   r9   r>   r6   r(   )r6   r7   )	_match_idr   r   str_yes_playlist
url_resultr"   LocipoPlaylistIEr   r   _download_webpage_search_jsonr	   _extract_from_streaks_apir   filterr
   stripr   )	r   rA   video_idplaylist_id	creativesrS   webpagerT   api_keys	            r   _real_extractzLocipoIE._real_extracto   s   >>#&&"8C==62u2EFFk844 	N??>::[::<LN N N NN#:#:#:HkRR		JHZ@[@[?\+]^^((h77""+Wh[e # g gv2LseV]^gVhVhUi'jkk
,,]H-%,O O,  

 9 :,/ -
|VD&>%P"ZL3I3I2JCRUR[Q\^de&fE' '  
 9x!J<8"[M22 2 '  
  (!
 
 	
r   N)	r   r    r!   r   r#   
_VALID_URLint_TESTSrr   r$   r   r   r&   r&      sd       H0EHHHVl>SVVVJ
 Q
8
5
 Y
 A	

 <
 :
 [
 !#
  
 J
 -
 
 I
 7
 
  :!
" )#
$ =%
 
 . R
8
5
 V
 A	

 <
 :
 [
 !#
  
 J
 N
 
 I
 7
 
  :!
" )#
$ =%
 
 . {8N
 
   {
8
5
 1
 A	

 <
 :
 [
 !#
  
 J
 ?
 
 I
 7
 
  :!
" )#
$ =%
 
(  &- gJFX 
  
  
  
  
r   r&   c                   p    e Zd Zdej         ddgZdddddd	d
dddddd	ddddddd	gZdZd Zd Z	dS )rg   z.https?://locipo\.jp/(?P<type>playlist)/(?P<id>r'   z0https?://locipo\.jp/(?P<type>series)/(?P<id>\d+)z?https://locipo.jp/playlist/35d3dd2b-531d-4824-8575-b1c527d29538z$35d3dd2b-531d-4824-8575-b1c527d29538u   レシピ集rF      rH   z?https://locipo.jp/playlist/fef7c4fb-741f-4d6a-a3a6-754f354302a21363u6   CBCアナウンサー公式【みてちょてれび】z$md5:50a1b23e63112d5c06c882835c8c1fb1)r(   r+   r,   &   zhttps://locipo.jp/series/503503u   FishingLover東海u]   東海地区の釣り場でフィッシングの魅力を余すところなくご紹介！！   d   c           
   #     K   |                      | j         d| d| d|d|dz    dd| j        || j        z  d          }t          |dd	d
t          hf          D ])}|                     | j         d| t                    V  *d S )Nr   
/creativeszDownloading page r   F)premiumlivelimitoffset)queryitems.r(   z
/creative/)r   r   
_PAGE_SIZEr   rd   rf   r"   r&   )r   r   rn   pagero   rm   s         r   _fetch_pagezLocipoPlaylistIE._fetch_page   s      ''~>>>>{>>>7TAX77 0	@ @ (  	 %Y#tcU0KLL 	U 	UH//T^"I"Ix"I"I8TTTTTT	U 	Ur   c                    |                      |                              dd          \  }}|                     t          |          |d          x}r1|                      |j                                      dd          \  }}|dk    rdnd}|                     | d| d	||                                          }t          t          j	        | j
        ||          t          j        t          |d
                   | j        z            | j                  } | j        ||fi t!          |dd|dt"          ht$          fdt"          ht$          fdt&          f          S )Ntyper(   Fr   playlist	playlistsr6   r   r~   totalr   .rZ   r,   )r+   r,   )_match_valid_urlgroup_request_webpager   rA   r   
capitalizer   	functoolspartialr   mathceilrt   r   playlist_resultr   r   rk   any)r   rA   playlist_typern   urlhr   ro   entriess           r   rr   zLocipoPlaylistIE._real_extract   s   %)%:%:3%?%?%E%Efd%S%S"{((S)9)9;e(TTT4 	])-)>)>tx)H)H)N)NvW[)\)\&M;+z99{{xNN--k---{DOO<M<MO O	 %d.kBBIc)G,--?@@$/S S $t#[ 9w] :,7 -
|VDE E '    	r   N)
r   r    r!   r   r#   rs   ru   r   r   rr   r$   r   r   rg   rg      s        R,:ORRR;J
 Q8#
 
 !  QMA
 

  	 	 .)z
 

 ! !F2 JU U U    r   rg   )r   r   streaksr   
networkingr   utilsr   r   r	   r
   r   r   utils.traversalr   r   r   r&   rg   r$   r   r   <module>r      s9        " " " " " " $ $ $ $ $ $                4 3 3 3 3 3 3 3
 
 
 
 
= 
 
 
q
 q
 q
 q
 q
| q
 q
 q
h? ? ? ? ?| ? ? ? ? ?r   