a
    hs                     @   s@   d dl mZ ddlmZmZmZmZmZmZ G dd deZ	dS )   )InfoExtractor   )float_or_noneint_or_none
remove_endstrip_or_nonetraverse_objurl_or_nonec                   @   s   e Zd ZdZddddddddd	d
d	ddidddddddddd	dd	ddiddddddddddd	d	ddidgZdd Zdd  Zd!S )"NZOnScreenIEz3https?://www\.nzonscreen\.com/title/(?P<id>[^/?#]+)zQhttps://www.nzonscreen.com/title/shoop-shoop-diddy-wop-cumma-cumma-wang-dang-1982Z726ed6585c6bfb30mp4hiz0shoop-shoop-diddy-wop-cumma-cumma-wang-dang-1982z&Monte Video - "Shoop Shoop, Diddy Wop"z9Shoop Shoop Diddy Wop Cumma Cumma Wang Dang | Music Videoz6re:https://www\.nzonscreen\.com/content/images/.+\.jpg   )	idext	format_id
display_idtitledescription	alt_title	thumbnaildurationZskip_downloadZm3u8)urlZ	info_dictparamszKhttps://www.nzonscreen.com/title/shes-a-mod-1964?collection=best-of-the-60sZ3dbe709ff03c36f1zshes-a-mod-1964zRay Columbus - 'She's A Mod'zShe's a Mod | Music Video   z>https://www.nzonscreen.com/title/puha-and-pakeha-1968/overviewZf86342544385ad8azpuha-and-pakeha-1968z(Looking At New Zealand - Puha and Pakehau;   Looking at New Zealand - 'Pūhā and Pākehā' | Televisionz*An excerpt from this television programme.   )	r   r   r   r   r   r   r   r   r   c                 c   s   t t|ddddftd D ]f\}\}}||d||dkrJt|dnd |dkrbt|d	nd tt|d| d
fdddV  q d S )NZh264Zlo_resZhi_res)lor   )expected_typer   r   heightwidthZ_res_mbi   )Zinvscale)r   r   r   qualityr   r   Zfilesize_approx)	enumerater   r	   itemsr   getr   )selfplaylistr   Zid_r    r%   P/mnt/pikpak/tmp/myenv/lib/python3.9/site-packages/yt_dlp/extractor/nzonscreen.py_extract_formats:   s    zNZOnScreenIE._extract_formatsc                 C   s   |  |}| ||}| | d|d|}|d |t|dt|dtt| j|d dpf| |dt	|dt
|d	t| |d
d
dd	S )Nzdata-video-config=\'([^\']+)\'z
media datauuidlabelr   )defaultz | NZ On Screen)r   pathr   zhttps://www.nzonscreen.com/)ZRefererZOrigin)	r   r   r   r   r   r   r   formatsZhttp_headers)Z	_match_idZ_download_webpageZ_parse_jsonZ_html_search_regexr   r"   r   Z_html_extract_titleZ_og_search_titler   r   listr'   )r#   r   Zvideo_idZwebpager$   r%   r%   r&   _real_extractG   s,    
zNZOnScreenIE._real_extractN)__name__
__module____qualname__Z
_VALID_URLZ_TESTSr'   r.   r%   r%   r%   r&   r
      sV   ,r
   N)
commonr   utilsr   r   r   r   r   r	   r
   r%   r%   r%   r&   <module>   s    
