U
    y^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   sh  t | j|}|d}|d}| ||}| |}| |}| |}t	t
| d|d}	t|	d}
tdddd	d
dg}g }|	d  D ]\}}|dkrqt|}|dkr| |d |}|r|||d d< || q|dkr|| j||ddddd q|||||d q|sJ|	d}|rJ| |dS | | ||||||
|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   QC:\Users\TaGoRe\Desktop\beinconnect-dl\binaries\youtube_dl\extractor\giantbomb.py_real_extract   st    





      
    



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
   