U
    g                     @   s4   d dl mZ ddlmZmZmZ G dd deZdS )   )InfoExtractor   )int_or_nonestr_or_noneurl_or_nonec                   @   sL   e Zd ZdZdZdgZddddddd	d
dddddddgZdd ZdS )ViqeoIEFaE  (?x)
                        (?:
                            viqeo:|
                            https?://cdn\.viqeo\.tv/embed/*\?.*?\bvid=|
                            https?://api\.viqeo\.tv/v\d+/data/startup?.*?\bvideo(?:%5B%5D|\[\])=
                        )
                        (?P<id>[\da-f]+)
                    z^<iframe[^>]+\bsrc=(["\'])(?P<url>(?:https?:)?//cdn\.viqeo\.tv/embed/*\?.*?\bvid=[\da-f]+.*?)\1z4https://cdn.viqeo.tv/embed/?vid=cde96f09d25f39bee837Z a169dd1a6426b350dca4296226f21e76Zcde96f09d25f39bee837Zmp4zre:^https?://.*\.jpg$L   )idexttitleZ	thumbnailduration)urlmd5Z	info_dictzviqeo:cde96f09d25f39bee837T)r   Zonly_matchingzQhttps://api.viqeo.tv/v1/data/startup?video%5B%5D=71bbec412ade45c3216c&profile=112c                 C   sH  |  |}| d| |}| | d|d|}g }g }|d D ]}t|tsRqBt|d}|rB|dspqBt	|d}	|	sqB|	
dd	  }
|t|d
t|dd}t	|d}|
dkr||d< || qB|
dkrB|
dk}||rdn|t|d|rdnd d || qBt|d}|||||dS )Nz https://cdn.viqeo.tv/embed/?vid=zSLOT_DATA\s*=\s*({.+?})\s*;z	slot dataZ
mediaFilesr   )httpz//type/    widthheight)r   r   r   Zqualityimager	   )videoaudior   fpsnone)	format_idr   Zvcodecr   )r	   r   r   
thumbnailsformats)Z	_match_idZ_download_webpageZ_parse_jsonZ_search_regex
isinstancedictr   get
startswithr   splitlowerr   appendupdate)selfr   Zvideo_idZwebpagedatar   r   Z
media_fileZ	media_url
media_typeZ
media_kindfr   Zis_audior    r)   :/tmp/pip-unpacked-wheel-q5ljy6pj/yt_dlp/extractor/viqeo.py_real_extract&   s`    
   

zViqeoIE._real_extractN)__name__
__module____qualname__Z_WORKINGZ
_VALID_URLZ_EMBED_REGEXZ_TESTSr+   r)   r)   r)   r*   r   	   s(   r   N)commonr   utilsr   r   r   r   r)   r)   r)   r*   <module>   s   