U
    g                     @   sL   d dl mZ d dlmZ ddlmZ ddlmZmZm	Z	 G dd deZ
dS )	   )InfoExtractor)UplynkPreplayIE   )HEADRequest)float_or_nonemake_archive_idsmuggle_urlc                   @   sB   e Zd ZdZdddddddd	d
ddedddidgZdd ZdS )FoxSportsIEz6https?://(?:www\.)?foxsports\.com/watch/(?P<id>[\w-]+)z4https://www.foxsports.com/watch/play-612168c6700004bZ b72f5bd8658140baa5791bb676433733Zmp4zplay-612168c6700004bz$md5:e0c4ecac3a1f25295b4fae22fb5c126az$md5:371bc43609708ae2b9e1a939229762afZ 06b4a36349624051a9ba52ac3a91d268Z20221205i:/cg{P?@zre:^https?://.*\.jpg$)idext
display_idtitledescriptionZuploader_idZupload_date	timestampdurationZ	thumbnailZextra_param_to_segment_urlZskip_downloadZm3u8)urlZ	info_dictparamsc                 C   s   |  |}| ||}| j||di d}| jd| |dddid}| t|d |d	j}d
t t	|ddi||
dp|
d|
dp|
dt|
d|
d|
dt| |gd
S )NZVideoObject)Zexpected_typedefaultz/https://api3.fox.com/v2.0/vodplayer/sportsclip/zDownloading API JSONz	x-api-keyZ cf289e299efdfa39fb6316f259d1de93)Znoteheadersr   zFetching preplay URLZurl_transparentZOriginzhttps://www.foxsports.comnamer   r   ZdurationInSecondsr   
thumbnails)
_typeie_keyr   r   r   r   r   r   r   Z_old_archive_ids)Z	_match_idZ_download_webpageZ_search_json_ldZ_download_jsonZ_request_webpager   r   r   r   r   getr   r   )selfr   Zvideo_idZwebpageZjson_lddataZpreplay_url r   >/tmp/pip-unpacked-wheel-q5ljy6pj/yt_dlp/extractor/foxsports.py_real_extract   s6    
  
  
zFoxSportsIE._real_extractN)__name__
__module____qualname__Z
_VALID_URLstrZ_TESTSr   r   r   r   r   r	      s&    r	   N)commonr   Zuplynkr   Z
networkingr   utilsr   r   r   r	   r   r   r   r   <module>   s   