o
    i                     @   sL   d dl Z ddlmZ ddlmZmZmZmZmZm	Z	m
Z
 G dd deZdS )    N   )InfoExtractor   )ExtractorErrorint_or_noneunescapeHTMLunified_timestamp
xpath_attrxpath_element
xpath_textc                   @   sn   e Zd ZdZ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gZdddddddgZdd ZdS )SpringboardPlatformIEaU  (?x)
                    https?://
                        cms\.springboardplatform\.com/
                        (?:
                            (?:previews|embed_iframe)/(?P<index>\d+)/video/(?P<id>\d+)|
                            xml_feeds_advanced/index/(?P<index_2>\d+)/rss3/(?P<id_2>\d+)
                        )
                    zo<iframe\b[^>]+\bsrc=(["\'])(?P<url>(?:https?:)?//cms\.springboardplatform\.com/embed_iframe/\d+/video/\d+.*?)\1zBhttp://cms.springboardplatform.com/previews/159/video/981017/0/0/1 5c3cb7b5c55740d482561099e920f192981017mp4z/Redman "BUD like YOU" "Usher Good Kisser" REMIXzre:https?://.+\.jpgi(S20140827   )idexttitledescription	thumbnail	timestampupload_datedurationzInvalid URL)urlmd5	info_dictskipz[http://cms.springboardplatform.com/embed_iframe/159/video/981017/rab007/rapbasement.com/1/1T)r   only_matchingzWhttp://cms.springboardplatform.com/embed_iframe/20/video/1731611/ki055/kidzworld.com/10zRhttp://cms.springboardplatform.com/xml_feeds_advanced/index/159/rss3/981017/0/0/1/zjhttps://www.kidzworld.com/article/30935-trolls-the-beat-goes-on-interview-skylar-astin-and-amanda-leighton1731611z,Official Trailer | TROLLS: THE BEAT GOES ON!)r   r   r   )r   r   r   c                 C   sx  |  |}|dp|d}|dp|d}| d| d| |}t|ddd	d
}t|ddd	d
}tt|ddd	d
}|jd }	d|	v rRtd| dd	dt|	d}
t|	d}t|	d}t|	d}t|	d}tt|dd}t
|ddd}tt|dd}|	d||||d g}|d!  }|td"d#|	d$ d%d&d'd( || ||||||
|d)S )*Nr   id_2indexindex_2z<http://cms.springboardplatform.com/xml_feeds_advanced/index/z/rss3/z.//itemitemT)fatalz(./{http://search.yahoo.com/mrss/}contentcontentz./titler   r   zerror_video.mp4zVideo z no longer exists)expectedr   bitratefileSizewidthheightz./descriptionr   z*./{http://search.yahoo.com/mrss/}thumbnailr   z=./{http://cms.springboardplatform.com/namespaces.html}createdr   http)r   	format_idtbrfilesizer)   r*   r   z(https?://)cdn\.z\1hls.z.m3u8r   hlsm3u8_native)r   r   r,   protocol)r   r   r   r   r   r   formats)_match_valid_urlgroup_download_xmlr
   r   r   attribr   r   getr	   r   copyupdateresubappend)selfr   mobjvideo_idr!   videor#   r%   r   	video_urlr   r-   r.   r)   r*   r   r   r   r2   m3u8_format rC   X/home/ubuntu/.local/lib/python3.10/site-packages/yt_dlp/extractor/springboardplatform.py_real_extract;   sp   

	
z#SpringboardPlatformIE._real_extractN)__name__
__module____qualname__
_VALID_URL_EMBED_REGEX_TESTS_WEBPAGE_TESTSrE   rC   rC   rC   rD   r      sD    

r   )r:   commonr   utilsr   r   r   r   r	   r
   r   r   rC   rC   rC   rD   <module>   s    $