
    V|hl
                     >    S SK Jr  SSKJrJrJrJr   " S S\5      rg)   )InfoExtractor   )int_or_nonestr_or_nonetraverse_objurl_or_nonec                   `    \ rS rSrSrSrSSSSSSS	S
SSS\S\S.SS0S.SSS.SSS./rS rSr	g)
GoodGameIE
   zgoodgame:streamz2https?://goodgame\.ru/(?!channel/)(?P<id>[\w.*-]+)z https://goodgame.ru/TGW#autoplay7998mp4ur   re:шоуматч Happy \(NE\) vs Fortitude \(UD\), потом ладдер и дс \d{4}-\d{2}-\d{2} \d{2}:\d{2}$zhttps://goodgame.ru/TGWz-https://hls.goodgame.ru/previews/7998_240.jpgTGWJosephStalinis_live   2899)idext
channel_idtitlechannel_url	thumbnailuploaderchannellive_status	age_limitchannel_follower_countuploader_idconcurrent_view_countskip_downloadm3u8)url	info_dictparamszhttps://goodgame.ru/Mr.GrayT)r"   only_matchingz"https://goodgame.ru/HeDoPa3yMeHue*c                    U R                  U5      nU R                  SU S3U5      nUS   n/ 0 peUR                  S5      (       a  U R                  SU S3USSS	9u  pVOU R	                  S
SUS9  UUU[        U5      S.[        US[        14S[        14S[        14S[        14SS[        14SS[        14S[        1U R                  14S[        14S[        14S[
        1S 14S.
5      E$ )Nz https://goodgame.ru/api/4/users/z/stream	streamkeystatusz!https://hls.goodgame.ru/manifest/z_master.m3u8r   T)livezUser is offline)expectedvideo_id)r   formats	subtitlesr   r   
channelkeyr   linkstreamerusernamepreviewviewers	followersadultc                     U (       a  S$ S $ )Nr    )xs    S/home/james-whalen/.local/lib/python3.13/site-packages/yt_dlp/extractor/goodgame.py<lambda>*GoodGameIE._real_extract.<locals>.<lambda>C   s    ":Kt:K    )
r   r   r   r   r   r   r   r   r   r   )	_match_id_download_jsonget#_extract_m3u8_formats_and_subtitlesraise_no_formatsboolr   strr   r   _proto_relative_urlr   )selfr"   channel_nameresponse	player_idr,   r-   s          r9   _real_extractGoodGameIE._real_extract'   s?   ~~c*&&)I,W^'_amn[)	<<!!!%!I!I3I;lKe$ "J "0GY !!"3d\!Z "G}	

 8!C5)(3%0#k]3 &6'cU; *D;-@'+9Q9Q8RS*3k])C+6*F%v0K/LM& 
 	
r<   r7   N)
__name__
__module____qualname____firstlineno__IE_NAME
_VALID_URLint_TESTSrI   __static_attributes__r7   r<   r9   r
   r
   
   ss    GFJ1  K4H%$&)!%(
 #F+#& - 4+F4
r<   r
   N)commonr   utilsr   r   r   r   r
   r7   r<   r9   <module>rV      s    ! ;
 ;
r<   