U
    ¦y^’  ã                   @   sX   d dl mZ 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 )	é    )Úunicode_literalsNé   )ÚInfoExtractoré   )ÚExtractorErrorÚint_or_noneÚ
xpath_attrÚ
xpath_textÚxpath_elementÚunescapeHTMLÚunified_timestampc                   @   s\   e Zd ZdZddddddddd	d
dœdœdddœdddœdddœgZedd„ ƒ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+)
                        )
                    zBhttp://cms.springboardplatform.com/previews/159/video/981017/0/0/1Z 5c3cb7b5c55740d482561099e920f192Z981017Úmp4z/Redman "BUD like YOU" "Usher Good Kisser" REMIXzre:^https?://.*\.jpg$i(§ýSÚ20140827éÁ   )ÚidÚextÚtitleÚdescriptionÚ	thumbnailÚ	timestampÚupload_dateÚduration)ÚurlÚmd5Ú	info_dictz[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/c                 C   s   dd„ t  d| ¡D ƒS )Nc                 S   s   g | ]}|  d ¡‘qS )r   )Úgroup)Ú.0Úmobj© r    ú[C:\Users\TaGoRe\Desktop\beinconnect-dl\binaries\youtube_dl\extractor\springboardplatform.pyÚ
<listcomp>5   s   ÿz7SpringboardPlatformIE._extract_urls.<locals>.<listcomp>zo<iframe\b[^>]+\bsrc=(["\'])(?P<url>(?:https?:)?//cms\.springboardplatform\.com/embed_iframe/\d+/video/\d+.*?)\1)ÚreÚfinditer)Úwebpager    r    r!   Ú_extract_urls3   s    þþz#SpringboardPlatformIE._extract_urlsc                 C   s~  t  | j|¡}| d¡p | d¡}| d¡p4| d¡}|  d||f |¡}t|dddd	�}t|d
ddd	�}tt|dddd	�ƒ}|jd }	d|	kr t	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ÚindexZindex_2zFhttp://cms.springboardplatform.com/xml_feeds_advanced/index/%s/rss3/%sz.//itemÚitemT)Úfatalz(./{http://search.yahoo.com/mrss/}contentÚcontentz./titler   r   zerror_video.mp4zVideo %s 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/   r0   r   z(https?://)cdn\.z\1hls.z.m3u8r   ÚhlsÚm3u8_native)r   r   r2   Úprotocol)r   r   r   r   r   r   Úformats)r#   ÚmatchÚ
_VALID_URLr   Ú_download_xmlr
   r   r	   Úattribr   r   Úgetr   r   ÚcopyÚupdateÚsubÚappendÚ_sort_formats)Úselfr   r   Úvideo_idr(   Úvideor)   r+   r   Ú	video_urlr   r3   r4   r/   r0   r   r   r   r8   Úm3u8_formatr    r    r!   Ú_real_extract;   sˆ    ÿþ  þ
 ÿ  ÿ  þ þú	ü

ùz#SpringboardPlatformIE._real_extractN)Ú__name__Ú
__module__Ú__qualname__r:   Ú_TESTSÚstaticmethodr&   rH   r    r    r    r!   r      s4   	øýþþþí
r   )Ú
__future__r   r#   Úcommonr   Úutilsr   r   r   r	   r
   r   r   r   r    r    r    r!   Ú<module>   s   $