
    VGhB                     |    d dl Z d dlZddlmZ ddlmZ ddlmZmZm	Z	 ddl
mZmZ  G d d	e      Z G d
 de      Zy)    N   )InfoExtractor)JWPlatformIE   )determine_ext
js_to_jsonurl_or_none)find_elementtraverse_objc                       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idddddi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$ Zy%)&TV2DKIEa  (?x)
                    https?://
                        (?:www\.)?
                        (?:
                            tvsyd|
                            tv2ostjylland|
                            tvmidtvest|
                            tv2fyn|
                            tv2east|
                            tv2lorry|
                            tv2nord|
                            tv2kosmopol
                        )\.dk/
                        (?:[^/?#]+/)*
                        (?P<id>[^/?\#&]+)
                    zOhttps://www.tvsyd.dk/nyheder/28-10-2019/1930/1930-28-okt-2019?autoplay=1#playersPp5z21qmp4z19:30 - 28. okt. 2019 z?https://cdn.jwplayer.com/v2/media/sPp5z21q/poster.jpg?width=720i3]20191028)idexttitledescription	thumbnail	timestampupload_date)url	info_dictzAhttps://www.tv2lorry.dk/gadekamp/gadekamp-6-hoejhuse-i-koebenhavnoD9cyq0mu#   Gadekamp #6 - Højhuse i Københavnz?https://cdn.jwplayer.com/v2/media/oD9cyq0m/poster.jpg?width=720ixpya20211027z~https://www.tvsyd.dk/haderslev/x-factor-brodre-fulde-af-selvtillid-er-igen-hjemme-hos-mor-vores-diagnoser-har-vaeret-en-fordelr   z_x-factor-brodre-fulde-af-selvtillid-er-igen-hjemme-hos-mor-vores-diagnoser-har-vaeret-en-fordelr   )r   r   playlist_countzEhttps://www.tv2ostjylland.dk/aarhus/dom-kan-fa-alvorlige-konsekvenserz!dom-kan-fa-alvorlige-konsekvenser   zRhttps://www.tv2ostjylland.dk/artikel/minister-gaar-ind-i-sag-om-diabetes-teknologiT)r   only_matchingzlhttps://www.tv2ostjylland.dk/nyheder/28-10-2019/22/2200-nyhederne-mandag-d-28-oktober-2019?autoplay=1#playerzBhttps://www.tvmidtvest.dk/nyheder/27-10-2019/1930/1930-27-okt-2019zYhttps://www.tv2fyn.dk/artikel/fyn-kan-faa-landets-foerste-fabrik-til-groent-jetbraendstofzmhttps://www.tv2east.dk/artikel/gods-faar-indleveret-tonsvis-af-aebler-100-kilo-aebler-gaar-til-en-aeblebrandyzYhttps://www.tv2lorry.dk/koebenhavn/rasmus-paludan-evakueret-til-egen-demonstration#playerz0https://www.tv2nord.dk/artikel/dybt-uacceptabeltzwhttps://www.tv2kosmopol.dk/metropolen/chaufforer-beordres-til-at-kore-videre-i-ulovlige-busser-med-rode-advarselslamperc                 .   | j                  |      }| j                  ||      }t        |t        d      h      xs |}t        t	        j
                  d|      dt        ht        j                  hdt        hf      }| j                  ||d t              S )Narticle)tagz1x-data="(?:video_player|simple_player)\(({[^"]+}).)
jwpMediaIdvideoIdc                     d|  S )Nzjwplatform: )xs    _/var/www/it7/html/youtubeDownloader/venv/lib/python3.12/site-packages/yt_dlp/extractor/tv2dk.py<lambda>z'TV2DKIE._real_extract.<locals>.<lambda>e   s    [3D     )getterie)	_match_id_download_webpager   r
   refindallr   jsonloadsstrplaylist_from_matchesr   )selfr   video_idwebpagesearch_space
player_idss         r(   _real_extractzTV2DKIE._real_extract[   s    >>#&((h7#Gly.I-JKVw!JJK\Z:,.G#OQ
 )))D * W 	Wr*   N)__name__
__module____qualname__
_VALID_URL_TESTSr:   r&   r*   r(   r   r      s   J" a,Z#%
 S:Z#%
 Ps
  W5
  d ~ T k  k B Io:Fx
Wr*   r   c                   .    e Zd ZdZdddddddid	Zd
 Zy)TV2DKBornholmPlayIEz4https?://play\.tv2bornholm\.dk/\?.*?\bid=(?P<id>\d+)z5http://play.tv2bornholm.dk/?area=specifikTV&id=781021781021r   z12Nyheder-27.11.19)r   r   r   skip_downloadT)r   r   paramsc                    | j                  |      }| j                  d|t        j                  |dd      j	                         ddd      d   }| j                  d	|d
d      }| j                  | j                  d|d      |t              }g }t               }|D ]  }t        |j                  d            }	|	s |	|v r%|j                  |	       t        |	      }
|j                  d      }|dk(  s|
dk(  r'|j                  | j                  |	|dddd             |dk(  s|
dk(  r%|j                  | j                  |	|dd             |j!                  d|	i        |||dS )Nz<https://play.tv2bornholm.dk/controls/AJAX.aspx/specifikVideor   )playlist_id	serienavnXMLHttpRequestzapplication/json; charset=UTF-8)zX-Requested-WithzContent-Type)dataheadersdz,title\s*:\s*(["\'])(?P<value>(?:(?!\1).)+)\1r   value)groupz(?s)sources:\s*(\[.+?\]),sourcessrctypezapplication/x-mpegurlm3u8r   m3u8_nativehlsF)r   entry_protocolm3u8_idfatalzapplication/dash+xmlmpddash)mpd_idrV   r   )r   r   formats)r-   _download_jsonr1   dumpsencode_search_regex_parse_jsonr   setr	   getaddr   extend_extract_m3u8_formats_extract_mpd_formatsappend)r5   r   r6   videor   rN   rZ   srcssourcerO   r   src_types               r(   r:   z!TV2DKBornholmPlayIE._real_extractv   s   >>#&##JH'  vx$4 A" $   "";UG #  ""4#5#5(%$<j" u 	Ffjj/0Cd{HHSM$Czz&)H22cVmt99u]!  :  0 1 33se|t88&  9  ? @ 3  #	, 
 	
r*   N)r;   r<   r=   r>   _TESTr:   r&   r*   r(   rA   rA   h   s0    HJF)
 T

E0
r*   rA   )r1   r/   commonr   
jwplatformr   utilsr   r   r	   utils.traversalr
   r   r   rA   r&   r*   r(   <module>rp      s=     	 ! $ 
 9WWm WWt>
- >
r*   