o
    i                     @   s4   d dl mZ ddlmZmZmZ G dd deZdS )   )InfoExtractor   )ExtractorErrorUserNotLiveurlencode_postdatac                   @   sD   e Zd ZdZdddddddd	d
dddddddgZdd ZdS )BigoIEz8https?://(?:www\.)?bigo\.tv/(?:[a-z]{2,}/)?(?P<id>[^/]+)z https://www.bigo.tv/ja/2213386326576287577575737440u*   土よ〜💁‍♂️ 休憩室/REST roomzre:https?://.+u   ✨Shin💫	221338632T)idtitle	thumbnailuploaderuploader_idis_live
livestream)url	info_dictskipz"https://www.bigo.tv/th/Tarlerm1304)r   only_matchingzhttps://bigo.tv/115976881c              	   C   s   |  |}| jd|td|iddid}t|tstd|dr2td|d	|dd
d|dp8i }|dsCt|d| 	|d|dd\}}|dpV||dpa|dpa||||d|d|d
dS )Nz@https://ta.bigo.tv/official_website/studio/getInternalStudioInfositeIdAcceptzapplication/json)dataheaderszReceived invalid JSON datacodezBigo says: {} (code {})msgT)expectedr   alive)video_idhls_srcmp4m3u8roomId	roomTopic	nick_namesnapshot)r
   r   formats	subtitlesr   r   r   r   )
	_match_id_download_jsonr   
isinstancedictr   getformatr   #_extract_m3u8_formats_and_subtitles)selfr   user_idinfo_rawinfor%   subs r3   I/home/ubuntu/.local/lib/python3.10/site-packages/yt_dlp/extractor/bigo.py_real_extract   s6   




zBigoIE._real_extractN)__name__
__module____qualname__
_VALID_URL_TESTSr5   r3   r3   r3   r4   r      s(    r   N)commonr   utilsr   r   r   r   r3   r3   r3   r4   <module>   s    