o
    ij                     @   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traverse_objunified_strdateurl_or_nonec                   @   s   e Zd ZdZdddddddd	d
dddddddd	d
dddddddd	d
dddddddd	d
dddd ddd!d	d
gZd"d# Zd$S )%MediaKlikkIEz(?x)https?://(?:www\.)?
                        (?:mediaklikk|m4sport|hirado)\.hu/.*?(?:videok?|cikk)/
                        (?:(?P<year>[0-9]{4})/(?P<month>[0-9]{1,2})/(?P<day>[0-9]{1,2})/)?
                        (?P<id>[^/#?_]+)zVhttps://mediaklikk.hu/ajanlo/video/2025/08/04/heviz-dzsungel-a-viz-alatt-ajanlo-08-10/8573769u5   Hévíz - dzsungel a víz alatt – Ajánló (08.10.)z'heviz-dzsungel-a-viz-alatt-ajanlo-08-10mp420250804z]https://cdn.cms.mtv.hu/wp-content/uploads/sites/4/2025/08/vlcsnap-2025-08-04-13h48m24s336.jpg)idtitle
display_idextupload_date	thumbnail)url	info_dictzThttps://mediaklikk.hu/video/hazajaro-bilo-hegyseg-verocei-barangolas-a-drava-menten/8482167uA   Hazajáró, Bilo-hegység - Verőcei barangolás a Dráva menténz7hazajaro-bilo-hegyseg-verocei-barangolas-a-drava-menten20250703z`https://cdn.cms.mtv.hu/wp-content/uploads/sites/4/2025/07/2024-000307-M0010-01_3700_cover_01.jpgzFhttps://m4sport.hu/video/2025/08/07/holnap-kezdodik-a-12-vilagjatekok/8581887u&   Holnap kezdődik a 12. Világjátékokz!holnap-kezdodik-a-12-vilagjatekok20250807z]https://cdn.cms.mtv.hu/wp-content/uploads/sites/4/2025/08/vlcsnap-2025-08-06-20h30m48s817.jpgzJhttps://hirado.hu/video/2025/08/09/idojaras-jelentes-2025-augusztus-9-22308592033u/   Időjárás-jelentés, 2025. augusztus 9. 22:30z'idojaras-jelentes-2025-augusztus-9-223020250809zThttps://cdn.cms.mtv.hu/wp-content/uploads/sites/4/2025/08/Idojaras-jelentes-35-1.jpgzDhttps://hirado.hu/belfold/video/2025/08/09/nyitott-porta-napok-2025/8590581zNyitott Porta Napok 2025znyitott-porta-napok-2025z]https://cdn.cms.mtv.hu/wp-content/uploads/sites/4/2025/08/vlcsnap-2025-08-09-10h35m01s887.jpgc              	   C   s<  |  |}|d}| ||}| d|d|}t|d }|dp0| j|ddp0| d|d}td		|d
|d|d}|sPt| jd|dd d}t
j|d|d< | jd||d|id}	| jd|	d|dd}
t|
ddd dthfdd}|std| ||\}}|||||||dp| |d S )!Nr   z)loadPlayer\((?:\s*["\'][^"\']+["\']\s*,)?zplayer data	contentIdr   F)fatalz,<h\d+\b[^>]+\bclass="article_title">([^<]+)<z{}-{}-{}yearmonthdayz)<p+\b[^>]+\bclass="article_date">([^<]+)<zupload date)defaulttokenvideoz1https://player.mediaklikk.hu/playernew/player.phpReferer)queryheadersz\bpl\.setup\s*\(zplayer jsonz\);)end_patternplaylistc                 S   s   |d dkS )Ntypehls )_vr+   r+   O/home/ubuntu/.local/lib/python3.10/site-packages/yt_dlp/extractor/mediaklikk.py<lambda>c   s    z,MediaKlikkIE._real_extract.<locals>.<lambda>file)get_allzUnable to extract playlist urlbgImage)r   r   r   formats	subtitlesr   r   )_match_valid_urlgroup_download_webpage_search_jsonstrget_og_search_title_html_search_regexr   formaturllibparseunquotepopr   r   r   #_extract_m3u8_formats_and_subtitles_og_search_thumbnail)selfr   mobjr   webpageplayer_datavideo_idr   r   player_pageplayer_jsonplaylist_urlr3   r4   r+   r+   r.   _real_extractK   sN   


zMediaKlikkIE._real_extractN)__name__
__module____qualname__
_VALID_URL_TESTSrL   r+   r+   r+   r.   r	      sb    9r	   )
urllib.parser>   commonr   utilsr   r   r   r   r	   r+   r+   r+   r.   <module>   s    