o
    i                     @   s@   d dl ZddlmZ ddlmZmZmZmZ G dd deZ	dS )    N   )InfoExtractor   )int_or_noneparse_iso8601strip_or_nonetry_getc                   @   s.  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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/d0d1d2d3d4d5d6d7d8d9d:d;d<d=Zd>d? Zd@S )A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-00QyL0AgPAEzVhttp://www.clickhole.com/video/dont-understand-bitcoin-man-will-mumble-explanatio-2537106351mp4uF   Don’t Understand Bitcoin? This Man Will Mumble An Explanation At You)idexttitlezInvalid URL)r
   	info_dictskip)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                 C   s  |  | \}}| j|}|rPtj|}|dkr,|dd\}}|d ||f }n|dkr@|d\}}|d ||f }n|d | }| d| |d S |dkr| j	d	|d
|idd }|d }	g }
dD ]}||d }|r|

| j||ddddd qhd }|dpi }|d}|rd||dpd}||	t|d|
|dtt|dd d||dd S | 	d!| |d" }|d# }|d d$ }	|d%pi }|d&pd'}| j	|d( |d)|idd d }g }
|d*}|r| j||ddddd}
|d+}|r|
d,t| jd-|d.d d/|d0 ||	t|d1d t|dt|d2|
t|d3d tt|d4d5S )6Nr   -r   r   r)   /zhttp://
kinjavideoz0https://kinja.com/api/core/video/views/videoByIdvideoId)querydatar   )signedPlaylist	streamingUrlr   m3u8_nativehlsF)m3u8_idfatalposterr   z7https://i.kinja-img.com/gawker-media/image/upload/{}.{}formatjpgdescriptiontagsc                 S      | d d S )NpostInfopublishTimeMillis xrA   rA   J/home/ubuntu/.local/lib/python3.10/site-packages/yt_dlp/extractor/kinja.py<lambda>       z,KinjaEmbedIE._real_extract.<locals>.<lambda>i  network)r   r   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                 S   r>   )NcloudinaryLinklinkrA   rB   rA   rA   rD   rE      rF   fileDurationc                 S   r>   )Nr<   rN   rA   rB   rA   rA   rD   rE      rF   dateReleased)r   r   rJ   rK   durationrH   r<   rI   )_match_valid_urlgroups_PROVIDER_MAPgeturllibparseunquotesplit
url_result_download_jsonextend_extract_m3u8_formatsr:   r   r   r   append_search_regexstrr   )selfr
   
video_typevideo_idproviderblog
result_urlplaylist_idr1   r   rH   km3u8_urlrJ   r9   	poster_id
video_dataiptcfmgtvss_domainrendition_urlfallback_rendition_urlrA   rA   rD   _real_extracty   s   


	zKinjaEmbedIE._real_extractN)__name__
__module____qualname__IE_NAME_DOMAIN_REGEX_COMMON_REGEX
_VALID_URL_EMBED_REGEX_TESTS_WEBPAGE_TESTS_JWPLATFORM_PROVIDERr`   r}   rA   rA   rA   rD   r	      s    )		
r	   )
urllib.parserb   commonr   utilsr   r   r   r   r	   rA   rA   rA   rD   <module>   s    