
    V|h	                     B    S SK r S SKrSSKJr  SSKJr   " S S\5      rg)    N   )InfoExtractor   )float_or_nonec                   V    \ rS rSrSrSSSSSSS	.S
.SSSSSS	.S
./SS0SS./rS rSrg)CamtasiaEmbedIE   FzOhttp://www.ll.mit.edu/workshops/education/videocourses/antennas/lecture1/video/ 0c5e352edabf715d762b0ad4e6d9ee67z(Fenn-AA_PA_Radar_Course_Lecture_1c_Finalz1Fenn-AA_PA_Radar_Course_Lecture_1c_Final - video1flvgw@)idtitleextduration)md5	info_dict 10e4bb3aaca9fd630e273ff92d9f3c63z,Fenn-AA_PA_Radar_Course_Lecture_1c_Final_PIPz.Fenn-AA_PA_Radar_Course_Lecture_1c_Final - pipg(w@r   zwebpage dead)urlplaylistr   skipc                    U R                  SUSS S9nUc  g U R                  SUSS9n[        R                  R	                  X5      nU R                  XPR                  U5      SSS	9nUR                  S
5      n/ nUR                  5        H  nUR                  S5      n	U	c  M  UR                  [        R                  R                  U	R                  R                  S5      S   5      S   U SUR                   3[        R                  R	                  XR                  5      [!        UR                  S5      R                  5      S.5        M     SUUS.$ )Nz5fo\.addVariable\(\s*"csConfigFile",\s*"([^"]+)"\s*\);zcamtasia configuration file)defaultzDC.titleT)fatalz"Downloading camtasia configurationz)Failed to download camtasia configuration)noteerrnotez./playlist/array/filesetz./uri/r   r   z - z
./duration)r   r   r   r   r   )_typeentriesr   )_search_regex_html_search_metaurllibparseurljoin_download_xml_generic_idfindgetchildrenappendospathsplitexttext
rpartitiontagr   )
selfr   webpagecamtasia_cfgr   camtasia_urlfileset_noder   nurl_ns
             S/home/james-whalen/.local/lib/python3.13/site-packages/yt_dlp/extractor/camtasia.py_extract_from_webpage%CamtasiaEmbedIE._extract_from_webpage&   sS   ))D2D * B &&z7$&G||++C>))**3/5? * A $(()CD))+AFF7OE}NNgg&&uzz'<'<S'A!'DEaH!7#aeeW-||++C<)!&&*>*C*CD	  ,  
 	
     N)__name__
__module____qualname____firstlineno__
_VALID_URL_WEBPAGE_TESTSr6   __static_attributes__r9   r8   r5   r   r      si    J e9DP  '	 :HM  '	$ C #-	
N8!
r8   r   )r(   urllib.parser    commonr   utilsr   r   r9   r8   r5   <module>rD      s    	  ! !?
m ?
r8   