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rt	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   $