U
    ‹¾úgd  ã                   @   s,   d dl mZ ddlmZ G dd„ deƒZdS )é   )ÚInfoExtractoré   )ÚHEADRequestc                
   @   sb   e Zd ZdZdZddddddœZdd	d
ddddddœdœddd
ddddddœddœgZdd„ ZdS )ÚFujiTVFODPlus7IEzIhttps?://fod\.fujitv\.co\.jp/title/(?P<sid>[0-9a-z]{4})/(?P<id>[0-9a-z]+)zhttps://i.fod.fujitv.co.jp/)i@  é´   )i€  ih  )i   iÐ  )i€  i8  )i,  i   i°  iÐ  i   z.https://fod.fujitv.co.jp/title/5d40/5d40110076Z
5d40110076Útsu<   #1318 ã€Žã¾ã‚‹å­ã€ã¾ã¼ã‚ã—ã®æ´‹é¤¨ã‚’è¦‹ã‚‹ã€ã®å·»u   ã¡ã³ã¾ã‚‹å­ã¡ã‚ƒã‚“Z5d40z$md5:b3f51dbfdda162ac4f789e0ff4d65750zDhttps://i.fod.fujitv.co.jp/img/program/5d40/episode/5d40110076_a.jpg)ÚidÚextÚtitleÚseriesÚ	series_idÚdescriptionÚ	thumbnail)ÚurlÚ	info_dictz.https://fod.fujitv.co.jp/title/5d40/5d40810083Z
5d40810083u^   #1324 ã€Žã¾ã‚‹å­ã¨ã‚ªãƒ‹ã®å­ã€ã®å·»ï¼ã€Žçµæˆï¼2æœˆã‚’ãƒ ãƒ€ã«ã—ãªã„ä¼šã€ã®å·»z$md5:3972d900b896adc8ab1849e310507efazDhttps://i.fod.fujitv.co.jp/img/program/5d40/episode/5d40810083_a.jpg)r   r	   r
   r   r   r   r   z Video available only in one week)r   r   Úskipc                 C   sL  |   |¡ ¡ \}}|  t|ƒ|¡ i }|  |¡ d¡}|rb| jd|› d|dd|j› idd}n|  d|  	d	¡› ¡ g i  }}|  | j
› d
|› |¡}|d D ]j}	|	 d¡s²q¢|  |	d |d¡\}
}|
D ](}| ttd| j | d¡d¡ƒƒ¡ qÌ| |
¡ |  ||¡}q¢|| d¡| d¡|| d¡||| j
› d|› d|› dddœ	S )NZCTz;https://fod-sp.fujitv.co.jp/apps/api/episode/detail/?ep_id=z&is_premium=falsezx-authorizationzBearer F)ÚheadersÚfatalz6The token cookie is needed to extract video metadata. Úcookieszabrjson_v2/tv_android/Zvideo_selectorr   r   )ÚheightÚwidthÚtbr© Zep_titleZlu_titleZep_descriptionzimg/program/z	/episode/z_a.jpg)r   )	r   r
   r   r   r   ÚformatsÚ	subtitlesr   Z_format_sort_fields)Z_match_valid_urlÚgroupsZ_request_webpager   Z_get_cookiesÚgetZ_download_jsonÚvalueZreport_warningZ_login_hintÚ	_BASE_URLZ#_extract_m3u8_formats_and_subtitlesÚupdateÚdictÚzipÚ_BITRATE_MAPÚextendZ_merge_subtitles)Úselfr   r   Zvideo_idZ	json_infoÚtokenr   r   Zsrc_jsonÚsrcÚfmtÚsubsÚfr   r   ú;/tmp/pip-unpacked-wheel-q5ljy6pj/yt_dlp/extractor/fujitv.pyÚ_real_extract(   sD    
  þ


ÿ

÷zFujiTVFODPlus7IE._real_extractN)Ú__name__Ú
__module__Ú__qualname__Z
_VALID_URLr   r"   Z_TESTSr+   r   r   r   r*   r      s>   û	ùþùöõr   N)Úcommonr   Z
networkingr   r   r   r   r   r*   Ú<module>   s   