o
    i                     @   s0   d dl mZ ddlmZmZ G dd deZdS )   )InfoExtractor   )int_or_nonetry_getc                   @   sv   e Zd ZdZdZdZdgZddddd	d
dddddddd
dddiddddgZdddddddgZdd Z	dS )TwentyMinutenIEF20mina9  (?x)
                    https?://
                        (?:www\.)?20min\.ch/
                        (?:
                            videotv/*\?.*?\bvid=|
                            videoplayer/videoplayer\.html\?.*?\bvideoId@
                        )
                        (?P<id>\d+)
                    zz<iframe[^>]+src=(["\'])(?P<url>(?:(?:https?:)?//)?(?:www\.)?20min\.ch/videoplayer/videoplayer.html\?.*?\bvideoId@\d+.*?)\1z-http://www.20min.ch/videotv/?vid=469148&cid=2 e7264320db31eed8c38364150c12496e469148mp4u'   85 000 Franken für 15 perfekte Minutenzre:https?://.+\.jpg)idexttitle	thumbnail)urlmd5	info_dictzVhttp://www.20min.ch/videoplayer/videoplayer.html?params=client@twentyDE|videoId@523629523629z*So kommen Sie bei Eis und Schnee sicher anz$md5:117c212f64b25e3d95747e5276863f7d)r   r   r   descriptionr   skip_downloadT)r   r   paramsz.http://www.20min.ch/videotv/?cid=44&vid=468738)r   only_matchingzRhttps://www.20min.ch/story/so-kommen-sie-bei-eis-und-schnee-sicher-an-557858045456)r   r   r   r   )r   r   c           	         s   |  || d dd   d }fddtddgD } d	} d
} fdd}|d}|d}||||||dS )Nzhttp://api.20min.ch/video/z/showcontentr   c                    s,   g | ]\}\}}|d   | d|dqS )z)http://podcast.20min-tv.ch/podcast/20min/z.mp4)	format_idr   quality ).0r   r   p)video_idr   N/home/ubuntu/.local/lib/python3.10/site-packages/yt_dlp/extractor/twentymin.py
<listcomp>B   s    

z1TwentyMinutenIE._real_extract.<locals>.<listcomp>)sd )hdhleadr   c                    s   t  fddS )Nc                    s   t | d d   S )Ncommunityobjectthumbs_)r   )xkindr   r   <lambda>N   s    zFTwentyMinutenIE._real_extract.<locals>.extract_count.<locals>.<lambda>)r   r(   )videor(   r   extract_countK   s   
z4TwentyMinutenIE._real_extract.<locals>.extract_countupdown)r   r   r   r   
like_countdislike_countformats)	_match_id_download_json	enumerateget)	selfr   r   r1   r   r   r,   r/   r0   r   )r+   r   r   _real_extract9   s0   





zTwentyMinutenIE._real_extractN)
__name__
__module____qualname___WORKINGIE_NAME
_VALID_URL_EMBED_REGEX_TESTS_WEBPAGE_TESTSr7   r   r   r   r   r      sF    	
r   N)commonr   utilsr   r   r   r   r   r   r   <module>   s    