
    yf                     N    d dl mZ ddlmZmZ ddlmZmZmZm	Z	  G d de      Z
y)   )InfoExtractor   )
compat_strcompat_urllib_parse_unquote)int_or_noneparse_iso8601strip_or_nonetry_getc                      e Zd ZdZdZdZdeedZde de dgZd	d
ddd
ddd
ddd
ddd
ddd
ddd
ddd
ddd
ddd
ddd
ddd
ddd
dgZdZ	i ddddddde	d e	d!d"d#d$d%d&d'd(d)d*d+d,d-d.d/d0d1d2d3d4d5d6Z
d7 Zy8)9KinjaEmbedIEzkinja:embeda1  (?:[^.]+\.)?
        (?:
            avclub|
            clickhole|
            deadspin|
            gizmodo|
            jalopnik|
            jezebel|
            kinja|
            kotaku|
            lifehacker|
            splinternews|
            the(?:inventory|onion|root|takeout)
        )\.comzX/
        (?:
            ajax/inset|
            embed/video
        )/iframe\?.*?\bid=z(?x)https?://a  
        (?P<type>
            fb|
            imgur|
            instagram|
            jwp(?:layer)?-video|
            kinjavideo|
            mcp|
            megaphone|
            soundcloud(?:-playlist)?|
            tumblr-post|
            twitch-stream|
            twitter|
            ustream-channel|
            vimeo|
            vine|
            youtube-(?:list|video)
        )-(?P<id>[^&]+)z:(?x)<iframe[^>]+?src=(?P<q>["\'])(?P<url>(?:(?:https?:)?//z)?z(?:(?!\1).)+)\1z;https://kinja.com/ajax/inset/iframe?id=fb-10103303356633621T)urlonly_matchingz8https://kinja.com/ajax/inset/iframe?id=kinjavideo-100313z>https://kinja.com/ajax/inset/iframe?id=megaphone-PPY1300931075z;https://kinja.com/ajax/inset/iframe?id=soundcloud-128574047zDhttps://kinja.com/ajax/inset/iframe?id=soundcloud-playlist-317413750zUhttps://kinja.com/ajax/inset/iframe?id=tumblr-post-160130699814-daydreams-at-midnightzChttps://kinja.com/ajax/inset/iframe?id=twitch-stream-libratus_extrazBhttps://kinja.com/ajax/inset/iframe?id=twitter-1068875942473404422z?https://kinja.com/ajax/inset/iframe?id=ustream-channel-10414700z6https://kinja.com/ajax/inset/iframe?id=vimeo-120153502z7https://kinja.com/ajax/inset/iframe?id=vine-5BlvV5qqPrDzRhttps://kinja.com/ajax/inset/iframe?id=youtube-list-BCQ3KyrPjgA/PLE6509247C270A72Ez@https://kinja.com/ajax/inset/iframe?id=youtube-video-00QyL0AgPAE)zcdn.jwplayer.com/v2/media/
JWPlatformfb)zfacebook.com/video.php?v=Facebookimgur)z
imgur.com/Imgur	instagram)zinstagram.com/p/	Instagramzjwplayer-videoz	jwp-video	megaphone)zplayer.megaphone.fm/Generic
soundcloud)zapi.soundcloud.com/tracks/
Soundcloudzsoundcloud-playlist)zapi.soundcloud.com/playlists/SoundcloudPlaylisttumblr-post)z%s.tumblr.com/post/%sTumblrztwitch-stream)z
twitch.tv/TwitchStreamtwitter)ztwitter.com/i/cards/tfw/v1/TwitterCardzustream-channel)zustream.tv/embed/Ustreamvimeo)z
vimeo.com/Vimeovine)z
vine.co/v/Vineyoutube-list)zyoutube.com/embed/%s?list=%sYoutubePlaylistzyoutube-video)zyoutube.com/embed/Youtubec                     | j                  |      j                         \  }}| j                  j                  |      }|rtt	        |      }|dk(  r |j                  dd      \  }}|d   ||fz  }n,|dk(  r|j                  d      \  }}|d   ||fz  }n|d   |z   }| j                  d|z   |d         S |dk(  r| j                  d	|d
|i      d   }|d   }	g }
dD ]?  }|j                  |dz         }|s|
j                  | j                  ||dddd             A d }|j                  d      xs i }|j                  d      }|rd|d|j                  d      xs d}||	t        |j                  d            |
|j                  d      t        t        |d       d      ||j                  d      d S | j                  d!|z   |      d"   }|d#   }|d   d$   }	|j                  d%      xs i }|j                  d&      xs d'}| j                  |d(z   |d)|i      d   d   }g }
|j                  d*      }|r| j                  ||dddd      }
|j                  d+      }|r1|
j                  d,t        | j                  d-|d.d /            |d0       ||	t        |d1 t              |j                  d      t        |j                  d2            |
t        |d3 t              t!        |j                  d4            d5S )6Nr   -r       r%   /zhttp://
kinjavideoz0https://kinja.com/api/core/video/views/videoByIdvideoId)querydatatitle)signedPlaylist	streamingUrlmp4m3u8_nativehlsF)m3u8_idfatalposteridz2https://i.kinja-img.com/gawker-media/image/upload/.formatjpgdescriptiontagsc                     | d   d   S )NpostInfopublishTimeMillis xs    8/usr/lib/python3/dist-packages/yt_dlp/extractor/kinja.py<lambda>z,KinjaEmbedIE._real_extract.<locals>.<lambda>   s    AjM2E$F     i  network)r:   r0   r>   formatsr?   	timestamp	thumbnailuploaderz2https://api.vmh.univision.com/metadata/v1/content/videoMetadataphotoVideoMetadataIPTCenphotoVideoMetadata_fmg
tvssDomainzhttps://auth.univision.comz'/api/v3/video-auth/url-signature-tokensmcpidsrenditionUrlfallbackRenditionUrlfallbackz_(\d+)\.mp4bitrate)default)	format_idtbrr   c                     | d   d   S )NcloudinaryLinklinkrC   rD   s    rF   rG   z,KinjaEmbedIE._real_extract.<locals>.<lambda>   s    Q7G5H5P rH   fileDurationc                     | d   d   S )Nr>   rP   rC   rD   s    rF   rG   z,KinjaEmbedIE._real_extract.<locals>.<lambda>   s    q7G7M rH   dateReleased)r:   r0   rL   rM   durationrJ   r>   rK   )_match_valid_urlgroups_PROVIDER_MAPgetr   split
url_result_download_jsonextend_extract_m3u8_formatsr	   r   r
   append_search_regexr   r   )selfr   
video_typevideo_idproviderblog
result_urlplaylist_idr/   r0   rJ   km3u8_urlrL   r9   	poster_id
video_dataiptcfmgtvss_domainrendition_urlfallback_rendition_urls                         rF   _real_extractzKinjaEmbedIE._real_extractr   s   #44S9@@B
H%%))*528<H]*!)Q!7$%a[D(+;;
~-(0s(;%+%a[Hk+BB
%a[83
??9z#98A;GG%&&BH 5 ' 77=?D MEG4 588AI.NN4#=#= (E= %U $> $4 55 IXXh'-2F

4(IYbdjdndnowdx  eB  }B  eB  C	 ,TXXm-DE"((F*HIMO& HHY/
 
 ,,DxO)+J 67DM$'E..!9:@bC'',/O3OK&&GG8 4 ' 66<>>?AD G HH^4M44!8U!5 5 ? &*XX.D%E"%!+&t'9'9&(>!4 (: (1 2 2   $T+PR\]GGI.'(@A"&t-MzZ*488N+CD	 	rH   N)__name__
__module____qualname__IE_NAME_DOMAIN_REGEX_COMMON_REGEX
_VALID_URL_EMBED_REGEX_TESTS_JWPLATFORM_PROVIDERrd   r}   rC   rH   rF   r   r      s   GMM, ,]#<J$ RR_Q``bcpbq  rA  B  CLL J P M V g U T Q H I d RI'FP H7( 	6 	.	
 	) 	8 	B 	V 	: 	7 	A 	; 	( 	& 	K  	:!M&UrH   r   N)commonr   compatr   r   utilsr   r   r	   r
   r   rC   rH   rF   <module>r      s%    ! y= yrH   