
    V|hg                     `    S SK Jr  SSKJr  SSKJrJrJrJr   " S S\5      r	 " S S\5      r
g	)
   )InfoExtractor   )	HTTPError)ExtractorErrordetermine_extint_or_noneunified_strdatec                       \ rS rSrSrSrSSSSSS	S
.SS0S.SSSSSSS
.SS0S.SSSSS.SS./rS/rSrSr	SS jr
S rS rSrg) RadioCanadaIE   radiocanadazk(?:radiocanada:|https?://ici\.radio-canada\.ca/widgets/mediaconsole/)(?P<app_code>[^:/]+)[:/](?P<id>[0-9]+)z@http://ici.radio-canada.ca/widgets/mediaconsole/medianet/71842727184272mp4u'   Le parcours du tireur capté sur vidéou_   Images des caméras de surveillance fournies par la GRC montrant le parcours du tireur d'Ottawa20141023idexttitledescriptionupload_dateskip_downloadTurl	info_dictparamszAhttp://ici.radio-canada.ca/widgets/mediaconsole/medianet/7754998/7754998letelejournal22hzINTEGRALE WEB 22H-TJ20170720zradiocanada:toutv:140872140872u
   Épisode 1zDistrict 31)r   r   series)r   r   only_matchingCANc                 J   U(       d  0 nUR                  SSS.5        U(       a  UR                  UUS.5        U R                  (       a  U R                  US'    U R                  SU-   X$S9$ ! [         a  n[	        UR
                  [        5      (       a  UR
                  R                  S;   al  U R                  UR
                  R                  R                  5       R                  5       S 5      nUR                  S	5      =(       d    US
   S   n[        USS9ee S nAff = f)Nz$773aea60-0e80-41bb-9c7f-e6d7c3ad17fbjson)
client_keyoutput)appCodeidMediaaccess_tokenz'https://services.radio-canada.ca/media/)query)i  i  error_descriptionerrorMessagetextTexpected)update_access_token_download_jsonr   
isinstancecauser   status_parse_jsonresponsereaddecodeget)selfpathvideo_idapp_coder*   edataerrors           V/home/james-whalen/.local/lib/python3.13/site-packages/yt_dlp/extractor/radiocanada.py	_call_apiRadioCanadaIE._call_api;   s   E@
 	 LL##  $($6$6E.!	&&9D@( ' Y Y 	!''9--!''..J2N''(8(8(=(=(?(F(F(H$O!45Un9Mf9U$UT::	s   A- -
D"7B&DD"c                 r  ^ U R                  SX!5      S   mU4S jnU" S5      (       a  U R                  S5        SSSS	.nU R                  (       a  U R                  US
'   U R                  SX!U5      nUR                  S5      nU(       dV  US   nUS:X  a  U R	                  XpR
                  5      eUS:X  a  U R                  U5        [        U R                   SU 3SS9eU R                  XbS5      n0 n	U" S5      =(       d    U" S5      n
U
(       a  U
[        U
S5      S./U	S'   UU" S5      =(       d    U" S5      U" S5      =(       d    U" S5      U" S5      =(       d    U" S5      =(       d    U" S5      [        U" S 5      5      U" S!5      [        S"5      [        S#5      [        U" S$5      5      U	US%.$ )&Nzmeta/v1/index.ashxMetasc                 ~   > T H6  nUR                  S5      U :X  d  M  UR                  S5      nU(       d  M4  Us  $    g )Nnamer-   )r:   )rH   metar-   metass      rB   get_meta-RadioCanadaIE._extract_info.<locals>.get_metaV   s6    88F#t+88F+Dt#	     protectionTypez%This video is probably DRM protected.hdipadtrue)connectionType
deviceTypemultibitrateclaimszvalidation/v2/r   messageu=   Le contenu sélectionné n'est pas disponible dans votre paysu<   Le contenu sélectionné est disponible seulement en premiumz said: Tr.   r   closedCaptionclosedCaptionHTML5vtt)r   r   frTitlezAV-nomEmissionDescriptionShortDescriptionimageHRimageMRimageBRlengthEmission	SrcSaison
SrcEpisodeDate)r   r   r   	thumbnaildurationr    season_numberepisode_numberr   	subtitlesformats)rC   report_warning_claimsr:   raise_geo_restricted_GEO_COUNTRIESraise_login_requiredr   IE_NAME_extract_m3u8_formatsr   r   r	   )r;   r>   r=   rK   r*   v_datav_urlrA   rk   rj   closed_caption_urlrJ   s              @rB   _extract_infoRadioCanadaIE._extract_infoS   s   3XHQ	$ $%% GH # "

 <<"llE(O 0(eL

5!9%EWW//7J7JKKVV))%0 <<.w/$@ @,,UeD	%o6X(CW:X)$%7?  IdO g&D(3C*D#M2Rh?Q6R!),Z0CZxPYGZ#HX$67z*(5),7*8F+;<"
 	
rM   c                 Z    U R                   " U R                  U5      R                  5       6 $ )N)rv   _match_valid_urlgroupsr;   r   s     rB   _real_extractRadioCanadaIE._real_extract   s'    !!4#8#8#=#D#D#FGGrM    )NNN)__name__
__module____qualname____firstlineno__rq   
_VALID_URL_TESTSro   r1   rm   rC   rv   r|   __static_attributes__r~   rM   rB   r   r      s    GJ VB  B)  	
  W+5)  	
" .%'
 "		
=(FR VNMG06
pHrM   r   c                   H    \ rS rSrSrSrSSSSSS	S
.SS0S.SSS./rS rSrg)RadioCanadaAudioVideoIE   zradiocanada:audiovideoz<https?://ici\.radio-canada\.ca/([^/]+/)*media-(?P<id>[0-9]+)zLhttp://ici.radio-canada.ca/audio-video/media-7527184/barack-obama-au-vietnam7527184r   zBarack Obama au VietnamuY   Les États-Unis lèvent l'embargo sur la vente d'armes qui datait de la guerre du Vietnam20160523r   r   Tr   zMhttps://ici.radio-canada.ca/info/videos/media-7527184/barack-obama-au-vietnam)r   r!   c                 H    U R                  SU R                  U5       35      $ )Nzradiocanada:medianet:)
url_result	_match_idr{   s     rB   r|   %RadioCanadaAudioVideoIE._real_extract   s#    !6t~~c7J6KLMMrM   r~   N)	r   r   r   r   rq   r   r   r|   r   r~   rM   rB   r   r      sO    &GPJ].x%
 T
 _F$NrM   r   N)commonr   networking.exceptionsr   utilsr   r   r   r	   r   r   r~   rM   rB   <module>r      s4    ! - AHM AHHNm NrM   