o
    i                     @   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   )ExtractorErrorformat_fieldint_or_none	qualitiesc                   @   sl   e Zd ZdZdddddddd	d
dddeeedddZdZddddddddddddZd"ddZ	d d! Z
dS )#FlickrIEzDhttps?://(?:www\.|secure\.)?flickr\.com/photos/[\w\-_@]+/(?P<id>\d+)zThttp://www.flickr.com/photos/forestwander-nature-pictures/5645318632/in/photostream/ 164fe3fa6c22e18d448d4d5af2330f31
5645318632mpgzWaterfalls in the Springtime at Dark Hollow Waterfalls. These are located just off of Skyline Drive in Virginia. They are only about 6/10 of a mile hike but it is a pretty steep hill and a good climb back up.zDark Hollow Waterfalls   i$EM20110423z10922353@N03zForest Wanderz;https://www.flickr.com/photos/forestwander-nature-pictures/zAttribution-ShareAlike)idextdescriptiontitleduration	timestampupload_dateuploader_iduploaderuploader_urlcomment_count
view_counttagslicense)urlmd5	info_dictz%https://api.flickr.com/services/rest?zAll Rights Reservedz$Attribution-NonCommercial-ShareAlikezAttribution-NonCommercialz"Attribution-NonCommercial-NoDerivsAttributionzAttribution-NoDerivszNo known copyright restrictionszUnited States government workzPublic Domain Dedication (CC0)zPublic Domain Work)012345678910Nc                 C   sZ   |d| |ddd}|r||d< |  | jtj| ||}|d dkr+t|d |S )	Nzflickr.jsonr   )photo_idmethodapi_keyformatnojsoncallbacksecretstatokmessage)_download_json_API_BASE_URLurllibparse	urlencoder   )selfr.   video_idr/   noter2   querydata r@   K/home/ubuntu/.local/lib/python3.10/site-packages/yt_dlp/extractor/flickr.py	_call_api2   s   zFlickrIE._call_apic                 C   st  |  |}| d|dd }| d||dd }|d dkr| d	||d
|d d }tg d}g }|d D ]}t|d}	||	|d ||	d q7|di }
|
d}|
dp_|}t|d d}||d d |di d|t|dt|di d||
d|t|di dt|ddd |di d g D | j	|d!d"S t
d#d$d%)&Nz.https://www.flickr.com/hermes_error_beacon.gnezDownloading api keysite_keyzphotos.getInfozDownloading video infophotomediavideozvideo.getStreamInfozDownloading streams infor2   streams)
288piphone_wifi100300700360pappletv720p1080porigstreamtype_content)	format_idr   qualityownernsid
path_aliasz!https://www.flickr.com/photos/%s/r   r   dateuploadedr   realnamecommentsviewsc                 S   s   g | ]}| d qS )rT   )get).0tagr@   r@   rA   
<listcomp>l   s    z*FlickrIE._real_extract.<locals>.<listcomp>r   r`   r   )r   r   r   formatsr   r   r   r   r   r   r   r   r   znot a videoT)expected)	_match_idr6   rB   r   strr^   appendr   r   	_LICENSESr   )r;   r   r<   r/   
video_inforG   
preferencerb   rR   stream_typerW   r   uploader_pathr   r@   r@   rA   _real_extractA   sb   



zFlickrIE._real_extract)N)__name__
__module____qualname__
_VALID_URLintlist_TESTr7   rg   rB   rl   r@   r@   r@   rA   r	      sF    
r	   )
urllib.parser8   commonr   utilsr   r   r   r   r	   r@   r@   r@   rA   <module>   s    