a
    ÿëÞh•  ã                   @   s@   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 )é    Né   )ÚInfoExtractoré   )Údetermine_extÚint_or_noneÚ	qualitiesÚunescapeHTMLc                
   @   s>   e Zd ZdZdddddddd	d
dœdœdddœgZdd„ ZdS )ÚGiantBombIEzXhttps?://(?:www\.)?giantbomb\.com/(?:videos|shows)/(?P<display_id>[^/]+)/(?P<id>\d+-\d+)zLhttp://www.giantbomb.com/videos/quick-look-destiny-the-dark-below/2300-9782/Z 132f5a803e7e0ab0e274d84bda1e77aez	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Úmd5Z	info_dictz8https://www.giantbomb.com/shows/ben-stranding/2970-20212T)r   Zonly_matchingc                 C   sR  |   |¡}| d¡}| d¡}|  ||¡}|  |¡}|  |¡}|  |¡}t t|  	d|d¡ƒ¡}	t
|	 d¡ƒ}
tg d¢ƒ}g }|	d  ¡ D ]\}}|dkrœqŠt|ƒ}|d	krÜ|  |d
 |¡}|rÚ||ƒ|d d< | |¡ qŠ|dkr| | j||ddddd¡ qŠ| ||||ƒdœ¡ qŠ|s>|	 d¡}|r>|  |d¡S ||||||
|dœS )Nr   r   zdata-video="([^"]+)"z
data-videoZlengthSeconds)Zf4m_lowZprogressive_lowZf4m_highZprogressive_highZf4m_hdZprogressive_hdZvideoStreamsZ
f4m_streamZf4mz?hdcore=3.3.1r   ÚqualityZm3u8r
   Zm3u8_nativeZhlsF)r   Zentry_protocolZm3u8_idÚfatal)r   Ú	format_idr   Z	youtubeIDZYoutube)r   r   r   r   r   r   Úformats)Z_match_valid_urlÚgroupZ_download_webpageZ_og_search_titleZ_og_search_descriptionZ_og_search_thumbnailÚjsonÚloadsr   Z_search_regexr   Úgetr   Úitemsr   Z_extract_f4m_formatsÚextendZ_extract_m3u8_formatsÚappendZ
url_result)Úselfr   ZmobjZvideo_idr   Zwebpager   r   r   Úvideor   r   r   r   Z	video_urlr   Zf4m_formatsZ
youtube_id© r!   úO/mnt/pikpak/tmp/myenv/lib/python3.9/site-packages/yt_dlp/extractor/giantbomb.pyÚ_real_extract   sX    






ÿ
þ
ý

ùzGiantBombIE._real_extractN)Ú__name__Ú
__module__Ú__qualname__Z
_VALID_URLZ_TESTSr#   r!   r!   r!   r"   r	      s"   ùýþôr	   )	r   Úcommonr   Úutilsr   r   r   r   r	   r!   r!   r!   r"   Ú<module>   s   