
    VGh                         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
 ddlmZmZmZ  G d d	e      Z G d
 de      Z G d de      Z G d de      Z G d de      Zy)    N   )InfoExtractor   )	HTTPError)ExtractorError
clean_htmlextract_attributesparse_durationparse_qs)find_elementfind_elementstraverse_objc                   z    e Zd ZdZdZdZdZd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edddddddgZd Z	y )!
VrSquareIEvrsquarez	VR SQUAREhttps://livr.jpz)https?://livr\.jp/contents/(?P<id>[\w-]+)z#https://livr.jp/contents/P470896661
P470896661mp4u~   そこ曲がったら、櫻坂？ ７年間お疲れ様！菅井友香の卒業を祝う会！前半 2022年11月6日放送分z$md5:523726dc835aa8014dfe1e2b38d36cd1g     @zcount:2z+re:https?://media\.livr\.jp/vod/img/.+\.jpg)idexttitledescriptiondurationtags	thumbnail)url	info_dictz#https://livr.jp/contents/P589523973
P589523973u%   薄闇に仰ぐ しだれ桜の妖艶z$md5:a042f517b2cbb4ed6746707afec4d306g     @z
Paid video)r   r   skipz#https://livr.jp/contents/P316939908
P316939908u[   2024年5月16日（木） 「今日は誰に恋をする？」公演 小栗有以 生誕祭z$md5:2110bdcf947f28bd7d06ec420e51b619g    @z Premium channel subscribers onlyz#https://livr.jp/contents/P126481458T)r   only_matchingc                    | j                  |      }| j                  ||      }| j                  | j                   d| |dd      }t	        |d      dk(  r| j                  d       	 | j                  | j                   d| |      }|| j                  ddg|      | j                  d|      | j                  t	        |dddt        f      |dd      | j                  d|      dt	        |t        d      ht        hft!        d      hdt"        hfd      S # t        $ rF}t        |j                  t              r&|j                  j                  d	k(  rt        d
d       d }~ww xY w)Nz/webApi/contentsStatus/zChecking contents statusF)fatalresult_code40407zUnable to access this videoz/webApi/play/url/i  z+VR SQUARE app-only videos are not supportedT)expectedog:titleztwitter:titler   urls.r   r   zog:image)r   r   r   formatsr   zlayout-product-data-time)clsz
search-tag)r   r   )	_match_id_download_webpage_download_json	_BASE_URLr   raise_login_requiredr   
isinstancecauser   status_html_search_meta_extract_m3u8_formatsanyr   r
   r   r   )selfr   video_idwebpager2   web_apies          b/var/www/it7/html/youtubeDownloader/venv/lib/python3.12/site-packages/yt_dlp/extractor/vrsquare.py_real_extractzVrSquareIE._real_extractB   s   >>#&((h7$$~~5hZ@0 % ? .'9%%&CD	))>>""3H:>JG ++Z,I7S11-I11,wUCI) 3*+3U% 2 I//
GD
 7*/IJKnM]^'L9:C*N% 
 	
  	!''9-!''..C2G$%R]abb	s   )!D 	E,&AE''E,N)
__name__
__module____qualname__IE_NAMEIE_DESCr.   
_VALID_URLlist_TESTSr<        r;   r   r      s    GG!I=J4 VAG
 5<AG
  5rAG
 3 5G'FR
rF   r   c                        e Zd ZdZddZddZy)VrSquarePlaylistBaseIEr   c              #      K   t        |g |t        dd      hdt        hdt        ht              D ]8  }| j                  | j                   d|j                  d       t               : y w)NvideoT)r*   html.zdata-urlz
/contents/)	r   r   r	   strfilter
url_resultr.   removeprefixr   )r6   sourcekeysurl_paths       r;   _fetch_vidsz"VrSquarePlaylistBaseIE._fetch_vidsd   s     $V .=.=!gD9:.=<?.= .=",.=/2e.=5;.= 
 	`H //>>"*X-B-B<-P,QRT^` `		`s   A2A4Nc           	   #     K   t        j                  d      D ]d  }| j                  | j                   | |d| d|i|xs i       }| j	                  |d      E d {    t        |dt        ht        f      rd y  y 7 !w)Nr   zDownloading playlist JSON page p)query)contents_render_list.)has_nexthasNext)	itertoolscountr-   r.   rS   r   boolr5   )r6   path
display_idrV   pageajaxs         r;   _entrieszVrSquarePlaylistBaseIE._entriesl   s     OOA& 	D&&>>"4&):1$8D2U[b2 ' 4D ''.KLLL'>&LM	
 Ms   ABB B<B)rE   )N)r=   r>   r?   r.   rS   ra   rE   rF   r;   rH   rH   a   s    !I`rF   rH   c                   .    e Zd ZdZdZddddddgZd	 Zy
)VrSquareChannelIEzvrsquare:channelz%https?://livr\.jp/channel/(?P<id>\w+)z"https://livr.jp/channel/H372648599
H372648599u   AKB48＋チャンネルr   r   i  r   r   playlist_mincountc                     | j                  |      }| j                  ||      }| j                  | j                  d| |      || j	                  d|            S )Nz/ajax/channel/r'   )r+   r,   playlist_resultra   r3   r6   r   playlist_idr8   s       r;   r<   zVrSquareChannelIE._real_extract   s^    nnS)((k:##MMN;-8+F//
GDF 	FrF   Nr=   r>   r?   r@   rB   rD   r<   rE   rF   r;   rc   rc   w   s1     G9J3.
 ! FFrF   rc   c                   ,    e Zd ZdZdZdddiddgZd Zy	)
VrSquareSearchIEzvrsquare:searchz2https?://livr\.jp/web-search/?\?(?:[^#]+&)?w=[^#]+zDhttps://livr.jp/web-search?w=%23%E5%B0%8F%E6%A0%97%E6%9C%89%E4%BB%A5r   u   #小栗有以<   rf   c                 n    t        |      d   d   }| j                  | j                  d|d|i      |      S )Nwr   z/ajax/web-search)r   ri   ra   )r6   r   search_querys      r;   r<   zVrSquareSearchIE._real_extract   sC    }S)!,##MM,lS,<OPR^` 	`rF   Nrl   rE   rF   r;   rn   rn      s0    GFJU/
   F`rF   rn   c                   >    e Zd ZdZdZddddddd	d
ddddgZd Zy)VrSquareSectionIEzvrsquare:sectionz3https?://livr\.jp/(?:category|headline)/(?P<id>\w+)z#https://livr.jp/category/C133936275
C133936275u#   そこ曲がったら、櫻坂？VRre   i4  rf   z#https://livr.jp/headline/A296449604
A296449604u   AKB48 アフターVR   c                     | j                  |      }| j                  ||      }| j                  | j                  |      || j	                  d|            S )Nr'   )r+   r,   ri   rS   r3   rj   s       r;   r<   zVrSquareSectionIE._real_extract   sW    nnS)((k:##W%{D4J4J:W^4_a 	arF   Nrl   rE   rF   r;   rt   rt      sK     GGJ4:
 ! 5+
  F arF   rt   )rZ   commonr   networking.exceptionsr   utilsr   r   r	   r
   r   utils.traversalr   r   r   r   rH   rc   rn   rt   rE   rF   r;   <module>r}      sj     ! -  K
 K
\] ,F. F,`- `&a. arF   