
    VGh?                         d dl Z ddlmZ ddlmZ ddlmZmZmZm	Z	m
Z
mZmZmZmZmZmZmZmZmZ  G d de      Z G d	 d
e      Z G d de      Z G d de      Zy)    N   )InfoExtractor   )HEADRequest)ExtractorErrorbase_url
clean_htmlextract_attributesget_element_html_by_classget_element_html_by_idint_or_none
js_to_jsonmimetype2extsanitize_urltraverse_objtry_callurl_basenameurljoinc                      e Zd ZdZdZ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ddd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/d0d1d0d2d0d3d4d5d4d6d7d7d8d8d9d:Zd; Zd< Zd= Zd> Z	y?)@	RCSBaseIEz7[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}z[\w-]+-\d{10}zvideoamica-vh.akamaihdamicazmedia2-amica-it.akamaizedzcorrierevam-vh.akamaihdcorrierezmedia2vam-corriere-it.akamaizedzcormezzogiorno-vh.akamaihdcorrieredelmezzogiornoz+media2vam-mezzogiorno-corriere-it.akamaizedzcorveneto-vh.akamaihdcorrieredelvenetoz&media2vam-veneto-corriere-it.akamaizedzcorbologna-vh.akamaihdcorrieredibolognaz'media2vam-bologna-corriere-it.akamaizedzcorfiorentino-vh.akamaihdcorrierefiorentinoz*media2vam-fiorentino-corriere-it.akamaizedzcorinnovazione-vh.akamaihdcorriereinnovazionez%media2-gazzanet-gazzetta-it.akamaizedgazzanetzvideogazzanet-vh.akamaihdzvideogazzaworld-vh.akamaihd
gazzaworldzgazzettavam-vh.akamaihdgazzettazmedia2vam-gazzetta-it.akamaizedzvideoiodonna-vh.akamaihdiodonnazmedia2-leitv-it.akamaizedleitvzvideoleitv-vh.akamaihdzvideoliving-vh.akamaihdlivingz#media2-living-corriere-it.akamaizedzmedia2-oggi-it.akamaizedoggizvideooggi-vh.akamaihdzmedia2-quimamme-it.akamaizedquimammezquimamme-vh.akamaihdzvideorunning-vh.akamaihdrunningz"media2-style-corriere-it.akamaizedstylezstyle-vh.akamaihdzvideostyle-vh.akamaihdz media2-stylepiccoli-it.akamaizedstylepiccolizstylepiccoli-vh.akamaihdzdoveviaggi-vh.akamaihdviaggi
vivimilanoyoureporter)zmedia2-doveviaggi-it.akamaizedz'media2-vivimilano-corriere-it.akamaizedzvivimilano-vh.akamaihdzmedia2-youreporter-it.akamaizedc              #     K   t        |ddd f      D ]  }|d   }dD ]  \  }}|j                  ||      } t        |d         }|dk(  rNd|v rJt        j                  d	|      }|r2d
| j
                  |j                  d          |j                  d       }t        |d      s	|dk(  rd|v r|j                  dd      }|dk(  rd|v r|j                  dd      }|dk(  r|j                  dd      }|||j                  d      d  y w)NmediaProfile	mediaFilec                 $    |j                  d      S )NmimeType)get)_vs     ]/var/www/it7/html/youtubeDownloader/venv/lib/python3.12/site-packages/yt_dlp/extractor/rcs.py<lambda>z*RCSBaseIE._get_video_src.<locals>.<lambda>H   s    !%%
:K     value))z#media2vam.corriere.it.edgesuite.net#media2vam-corriere-it.akamaized.net)z"media.youreporter.it.edgesuite.netz"media-youreporter-it.akamaized.net)z%corrierepmd.corriere.it.edgesuite.netz%corrierepmd-corriere-it.akamaized.net)z=media2vam-corriere-it.akamaized.net/fcs.quotidiani/vr/videos/zvideo.corriere.it/vr360/videos/)zhttp://zhttps://r0   m3u8z-vh.akamaihdz5(?:https?:)?//(?P<host>[\w\.\-]+)\.net/i(?P<path>.+)$zhttps://vod.rcsobjects.it/hls/hostpath)r-   geoblockingzfcs.quotidiani_!zvod.rcsobjectszvod-it.rcsobjectsvodz.csmilz.urlsetmp3r8   zvod.rcsobjects.it/corrierebitrate)typeurlr?   )r   replacer   research_MIGRATION_MAPgroupr1   )selfvideosourcerA   srtype_matchess           r4   _get_video_srczRCSBaseIE._get_video_srcF   sC    "5-K+M N 	F/C (1 kk!Q'( !
!34E>S#8))$\^ab:4;N;Nw}}]cOd;e:fgngtgtu{g|f}~CE#BCVO(:c(Akk"24GH5C<kk(I6~kk"GIef !::i0 5	s   D	Dc              #   x  K   |D ]  }|d   dk(  rt        j                  dd|d         }||d   k(  r/|j                         d= t        fd      }| j	                  t        |      |dd	| 
      }|stj                  ||dt        |j                  j                  dd             d         y w)Nvcodecnonez%(https?://[^/]+)/hls/([^?#]+?\.mp4).+z\g<1>/\g<2>rA   manifest_urlc                  .     d   j                  dd      S )N	format_idzhls-zhttps-)rB   )http_fs   r4   r5   z0RCSBaseIE._create_http_formats.<locals>.<lambda>q   s    )<)D)DVX)V r6   FzCheck filesize for )fatalnotehttpszContent-Length)rT   rA   protocolfilesize_approx)
rC   subcopyr   _request_webpager   updater   headersr1   )rG   m3u8_formatsvideo_idfhttp_urlrT   urlhrU   s          @r4   _create_http_formatszRCSBaseIE._create_http_formatsg   s      	A{f$vvFXYZ_X`aH1U8#VVXF~& !VWI((X)>PU0CI;.O ) QDMM&##.t||/?/?@PRV/W#X	  L+	s   B7B:c              #      K   |D ]n  }|d   dk(  r>| j                  |d   |ddd      }|E d {    | j                  ||      E d {    I|d   dk(  sRd	ddd
|j                  d      |d   d p y 7 H7 0w)Nr@   r9   rA   mp4hlsF)m3u8_idrV   r>   	https-mp3rQ   r?   )rT   extacodecrP   abrrA   )_extract_m3u8_formatsre   r1   )rG   sourcesra   rI   r`   s        r4   _create_formatszRCSBaseIE._create_formats   s      	Ff~'#995M8UE  :  P'''44\8LLL5(!, #$!::i0!%= 	 (Ls'   ,A;A7A;A9	A;!A;9A;c                    | j                  |      j                  dd      \  }}d\  }}t        j                  | j                  |      s t        j                  | j
                  |      r	d| d| }n| j                  ||      }t        d|      xs t        d|      }|ri| j                  t        |      j                  d      |d	      xs i }|j                  d
      r|d
    d}||j                  d      xs |}}d| d| }nL| j                  d||dd       }|r4| j                  t        |d      |      }||j                  d      xs |}}|s_| j                  ||      }| j                  d|d|d dt               }|s/t"        j%                  |      }	|	rd|	t"        j'                         dS |st)        d      |||j                  d      t+        |j                  d            xs. t+        |j                  d            xs | j-                  d      |j                  d      xs |t/        | j1                  | j3                  |      |            dS )Ncdnid)NNzhttps://video.z/video-json/divVideoPlayerzdata-configF)rV   	newspaperz.ituuidz(?x)url\s*=\s*(["'])
                    (?P<url>
                        (?:https?:)?//video\.rcs\.it
                        /fragment-includes/video-includes/[^"']+?\.json
                    )\1;rA   )rF   defaultrX   schemez##start-video##z
video dataz##end-video##)rw   end_patterntransform_sourceurl_transparent)_typerA   ie_keyz Video data not found in the pagetitledescriptionhtmlDescriptionprovider)rs   
display_idr   r   uploaderformats)_match_valid_urlrF   rC   match_UUID_RE
_RCS_ID_RE_download_webpager   r   _parse_jsonr
   r1   _search_regex_download_jsonr   _search_jsonr   RCSEmbedsIE_extract_urlr~   r   r	   _html_search_metalistrp   rN   )
rG   rA   rr   ra   r   
video_datawebpagedata_configjson_urlembs
             r4   _real_extractzRCSBaseIE._real_extract   s   --c288EX!+
J88DMM8,(0S"3%|H:>C,,S(;G01A7K  DOhiy  |C  PDK"..&{377FE / + 1.0  ??;/(56c:C'/1H1THH
&se<zB--
 XUD . B !%!4!4\(SZ5[]e!fJ+3Z^^D5I5UXJ,,S(;G**!7L(D+j + JJ !..w7!2""-"4"4"6   !CDD $^^G,&z~~m'DE N)*..9J*KLN#55mWM"z29cD001D1DZ1PRZ[\	
 		
r6   N)
__name__
__module____qualname__r   r   rE   rN   re   rp   r    r6   r4   r   r      s    JH!J' ''#W' 	":' 	*:	'
 	%&>' 	67O' 	 !4' 	12E' 	!"5' 	23F' 	$%9' 	56J' 	%&;' 	0' 	$Z'  	&|!'" 	":#'$ 	*:%'& 	#I''( 	$W)'* 	!'+', 	"8-'. 	.x/'0 	#F1'2 	 3'4 	'
5'6 	
7'8 	#I9': 	-g;'< 	W='> 	!'?'@ 	+NA'B 	#NC'D 	!(E'F +33?".+8M'NRB0";
r6   r   c                        e Zd ZdZdgZddddddd	d
dddddddgZdddddd	d
dgZed        Ze	 fd       Z
 xZS )r   a?  (?x)
                    https?://(?P<vid>video)\.
                    (?P<cdn>
                    (?:
                        rcs|
                        (?:corriere\w+\.)?corriere|
                        (?:gazzanet\.)?gazzetta
                    )\.it)
                    /video-embed/(?P<id>[^/=&\?]+?)(?:$|\?)a  (?x)
            (?:
                data-frame-src=|
                <iframe[^\n]+src=
            )
            (["'])
                (?P<url>(?:https?:)?//video\.
                    (?:
                        rcs|
                        (?:corriere\w+\.)?corriere|
                        (?:gazzanet\.)?gazzetta
                    )
                \.it/video-embed/.+?)
            \1z3https://video.rcs.it/video-embed/iodonna-0001585037 0faca97df525032bb9847f690bc3720cziodonna-0001585037rg   z6Sky Arte racconta Madonna nella serie "Artist to icon"z$md5:65b09633df9ffee57f48b39e34c9e067rcs.itrs   rk   r   r   r   rA   md5	info_dictzGhttps://video.gazzanet.gazzetta.it/video-embed/gazzanet-mo05-0000260789TrA   only_matchingzJhttps://video.gazzetta.it/video-embed/49612410-00ca-11eb-bcd8-30d4253e0140zhttps://www.iodonna.it/video-iodonna/personaggi-video/monica-bellucci-piu-del-lavoro-oggi-per-me-sono-importanti-lamicizia-e-la-famiglia/ziodonna-0002033648uZ   Monica Bellucci: «Più del lavoro, oggi per me sono importanti l'amicizia e la famiglia»z$md5:daea6d9837351e56b1ab615c06bebac1)rA   r   c                 X    t        | d      } t        t        |       t        |             S )NrX   rx   )r   r   r   r   )rA   s    r4   _sanitize_urlzRCSEmbedsIE._sanitize_url  s$    3w/x}l3&788r6   c                 L    t        | j                  t        |   ||            S )N)mapr   super_extract_embed_urls)clsrA   r   	__class__s      r4   r   zRCSEmbedsIE._extract_embed_urls  s"    3$$eg&A#w&OPPr6   )r   r   r   
_VALID_URL_EMBED_REGEX_TESTS_WEBPAGE_TESTSstaticmethodr   classmethodr   __classcell__)r   s   @r4   r   r      s    ?J L E1&MA 

 Y \F$ [&rA 
	 	N 9 9 Q Qr6   r   c                       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gdd
dddddd d!ddd
d"d#d$gZy%)&RCSIEa  (?x)https?://(?P<vid>video|viaggi)\.
                    (?P<cdn>
                    (?:
                        corrieredelmezzogiorno\.
                        |corrieredelveneto\.
                        |corrieredibologna\.
                        |corrierefiorentino\.
                    )?corriere\.it
                    |(?:gazzanet\.)?gazzetta\.it)
                    /(?!video-embed/)[^?#]+?/(?P<id>[^/\?]+)(?=\?|/$|$)zhttps://video.corriere.it/sport/formula-1/vettel-guida-ferrari-sf90-mugello-suo-fianco-c-elecrerc-bendato-video-esilarante/b727632a-f9d0-11ea-91b0-38d50a849abb 14946840dec46ecfddf66ba4eea7d2b2z$b727632a-f9d0-11ea-91b0-38d50a849abbrg   uf   Vettel guida la Ferrari SF90 al Mugello e al suo fianco c'è Leclerc (bendato): il video è esilarantez$md5:3915ce5ebb3d2571deb69a5eb85ac9b5zCorriere Tvr   r   zhhttps://viaggi.corriere.it/video/norvegia-il-nuovo-ponte-spettacolare-sopra-la-cascata-di-voringsfossen/ f22a92d9e666e80f2fffbf2825359c81z$5b7cd134-e2c1-11ea-89b3-b56dd0df2aa2zFnorvegia-il-nuovo-ponte-spettacolare-sopra-la-cascata-di-voringsfossenuK   La nuova spettacolare attrazione in Norvegia: il ponte sopra Vøringsfossenz$md5:18b35a291f6746c0c8dacd16e5f5f4f8zDOVE Viaggirs   r   rk   r   r   r   zhttps://video.corriere.it/cronaca/audio-telefonata-il-papa-becciu-santita-lettera-che-mi-ha-inviato-condanna/b94c0d20-70c2-11ed-9572-e4b947a0ebd2 aaffb08d02f2ce4292a4654694c78150z$b94c0d20-70c2-11ed-9572-e4b947a0ebd2r>   ui   L'audio della telefonata tra il Papa e Becciu: «Santità, la lettera che mi ha inviato è una condanna»z$md5:c0ddb61bd94a8d4e0d4bb9cda50a689brj   )rT   rk   )rs   rk   r   r   r   r   zIhttps://viaggi.corriere.it/video/milano-varallo-sesia-sul-treno-a-vapore/ 2dfdce7af249654ad27eeba03fe1e08dz$d8f6c8d0-f7d7-11e8-bfca-f74cf4634191z'milano-varallo-sesia-sul-treno-a-vaporez'Milano-Varallo Sesia sul treno a vaporez$md5:6348f47aac230397fe341a74f7678d53zhhttps://video.corriere.it/video-360/metro-copenaghen-tutta-italiana/a248a7f0-e2db-11e9-9830-af2de6b1f945Tr   Nr   r   r   r   r   r   r6   r4   r   r     s    	KJ q18~A%
	 z18bbA%
	 c18 BA%&1%@A
	 [18C>A%
	 z_2Fr6   r   c                   \    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gZy)RCSVariousIEz(?x)https?://www\.
                    (?P<cdn>
                        leitv\.it|
                        youreporter\.it|
                        amica\.it
                    )/(?:[^/]+/)?(?P<id>[^/]+?)(?:$|\?|/)z,https://www.leitv.it/benessere/mal-di-testa/ 3b7a683d105a7313ec7513b014443631zleitv-0000125151zmal-di-testarg   zDCervicalgia e mal di testa, il video con i suggerimenti dell'espertoz$md5:ae21418f34cee0b8d02a487f55bcabb5zleitv.itr   r   z6https://www.youreporter.it/fiume-sesia-3-ottobre-2020/ 3989b6d603482611a2abd2f32b79f739zyoureporter-0000332574zfiume-sesia-3-ottobre-2020zFiume Sesia 3 ottobre 2020z$md5:0070eef1cc884d13c970a4125063de55zyoureporter.itzghttps://www.amica.it/video-post/saint-omer-al-cinema-il-film-leone-dargento-che-ribalta-gli-stereotipi/ 187cce524dfd0343c95646c047375fc4zamica-0001225365zFsaint-omer-al-cinema-il-film-leone-dargento-che-ribalta-gli-stereotipizJ"Saint Omer": al cinema il film Leone d'argento che ribalta gli stereotipiz$md5:b1c8869c2dcfd6073a2a311ba0008aa8r   Nr   r   r6   r4   r   r   L  s~    =J >1$(\A"
 H1*61A(
 y1$bbA 
-!Fr6   r   )rC   commonr   
networkingr   utilsr   r   r	   r
   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r6   r4   <module>r      sY    	 ! $   $t
 t
n;Q) ;Q|=I =@(9 (r6   