3
b`p                 @   sT   d dl mZ d dlZ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 )	    )unicode_literalsN   )InfoExtractor   )determine_extint_or_none	qualitiesunescapeHTMLc            
   @   s4   e Zd ZdZdddddddd	d
ddZdd ZdS )GiantBombIEzNhttps?://(?:www\.)?giantbomb\.com/videos/(?P<display_id>[^/]+)/(?P<id>\d+-\d+)zLhttp://www.giantbomb.com/videos/quick-look-destiny-the-dark-below/2300-9782/Z c8ea694254a59246a42831155dec57acz	2300-9782z!quick-look-destiny-the-dark-belowmp4z#Quick Look: Destiny: The Dark Belowz$md5:0aa3aaf2772a41b91d44c63f30dfad24i_	  zre:^https?://.*\.jpg$)id
display_idexttitledescriptionduration	thumbnail)urlmd5	info_dictc          
   C   sl  t j| j|}|jd}|jd}| j||}| j|}| j|}| j|}tj	t
| jd|d}	t|	jd}
tdddd	d
dg}g }x|	d j D ]\}}|dkrqt|}|dkr| j|d |}|r|||d d< |j| q|dkr|j| j||ddddd q|j||||d qW |sN|	jd}|rN| j|dS | j| ||||||
|dS )Nr   r   zdata-video="([^"]+)"z
data-videolengthSecondsZf4m_lowprogressive_lowZf4m_highprogressive_highZf4m_hdprogressive_hdvideoStreams
f4m_streamf4mz?hdcore=3.3.1r   qualitym3u8r   m3u8_nativehlsF)r   entry_protocolm3u8_idfatal)r   	format_idr   Z	youtubeIDYoutube)r   r   r   r   r   r   formats)rematch
_VALID_URLgroup_download_webpage_og_search_title_og_search_description_og_search_thumbnailjsonloadsr	   _search_regexr   getr   itemsr   _extract_f4m_formatsextend_extract_m3u8_formatsappend
url_result_sort_formats)selfr   mobjvideo_idr   webpager   r   r   videor   r   r&   r$   	video_urlr   f4m_formats
youtube_id rB   JC:\Users\Broad\Desktop\All-Down\binaries\youtube_dl\extractor\giantbomb.py_real_extract   sV    








zGiantBombIE._real_extractN)__name__
__module____qualname__r)   _TESTrD   rB   rB   rB   rC   r
      s   r
   )
__future__r   r'   r/   commonr   utilsr   r   r   r	   r
   rB   rB   rB   rC   <module>   s
   