
    V|h                     X    S SK r SSKJr  SSKJrJrJr   " S S\5      r " S S	\5      rg)
    N   )InfoExtractor   )ExtractorErrordetermine_ext	qualitiesc                   `    \ rS rSrSrSrSrSrSSSS	S
S
SS.S.SSSSSSS.S.SSS./rS r	Sr
g)TeacherTubeIE   Fteachertubezteachertube.com videosz}https?://(?:www\.)?teachertube\.com/(viewVideo\.php\?video_id=|music\.php\?music_id=|video/(?:[\da-z-]+-)?|audio/)(?P<id>\d+)z8http://www.teachertube.com/viewVideo.php?video_id=339997 f9434ef992fd65936d72999951ee254c339997mp4z-Measures of dispersion from a frequency tablezre:https?://.*\.(?:jpg|png))idexttitledescription	thumbnail)urlmd5	info_dictz2http://www.teachertube.com/music.php?music_id=8805 01e8352006c65757caf7b961f6050e218805mp3zPER ASPERA AD ASTRAz-RADIJSKA EMISIJA ZRAKOPLOVNE TEHNI?KE ?KOLE P)r   r   r   r   z>http://www.teachertube.com/video/intro-video-schleicher-297790T)r   only_matchingc           	      2   U R                  U5      nU R                  X5      nU R                  SUSS S9nU(       a  [        U R                   SU 3SS9eU R                  SUSSS9nS	nUR                  U5      (       a  US [        U5      *  R                  5       nU R                  S
US
5      nU(       a  UR                  5       n[        / SQ5      n[        R                  " SU5      n	U	R                  [        R                  " SU5      5        U	R                  [        R                  " SU5      5        [        U	5       V
s/ s H  n
U
U" [        U
5      5      S.PM     nn
U R                  US S9=(       d    U R                  SU5      nUUUUUS.$ s  sn
f )Nz1<div\b[^>]+\bclass=["\']msgBox error[^>]+>([^<]+)error)defaultz said: T)expectedr   )fatalz - TeacherTuber   )r   flvr   zdata-contenturl="([^"]+)"zvar\s+filePath\s*=\s*"([^"]+)"z#\'file\'\s*:\s*["\']([^"\']+)["\'],)r   qualityr   )r   r   r   r   formats)	_match_id_download_webpage_search_regexr   IE_NAME_html_search_metaendswithlenstripr   refindallextendsetr   _og_search_thumbnail)selfr   video_idwebpager   r   TITLE_SUFFIXr   r"   
media_urls	media_urlr#   r   s                V/home/james-whalen/.local/lib/python3.13/site-packages/yt_dlp/extractor/teachertube.py_real_extractTeacherTubeIE._real_extract-   s   >>#&((7""@'T # #  DLL>!@4PP&&w&M'>>,''-C--.446E,,]G]S%++-K12ZZ <gF
"**%FPQ"**%KWUV  #:	
  /) !"=#;<  /	 	 
 --T . # "&*&<&<'" 	
 &"
 	

s   F N)__name__
__module____qualname____firstlineno___WORKINGr'   IE_DESC
_VALID_URL_TESTSr8   __static_attributes__r:       r7   r
   r
      st    HG&G RJ J1DJ7
	 D1*J	
	
 P+F6*
rD   r
   c                   >    \ rS rSrSrSrSrSrSrSSS	0S
S.r	S r
Srg)TeacherTubeUserIEZ   Fzteachertube:user:collectionz*teachertube.com user and collection videoszVhttps?://(?:www\.)?teachertube\.com/(user/profile|collection)/(?P<user>[0-9a-zA-Z]+)/?z(?sx)
        class="?sidebar_thumb_time"?>[0-9:]+</div>
        \s*
        <a\s+href="(https?://(?:www\.)?teachertube\.com/(?:video|audio)/[^"]+)"
    z2http://www.teachertube.com/user/profile/rbhagwati2r   
rbhagwati2   )r   r   playlist_mincountc                 >   U R                  U5      nUR                  S5      n/ nU R                  X5      nUR                  [        R
                  " U R                  U5      5        [        R
                  " SU S3U5      S S nU H^  nSU SU 3nU R                  XSU S[        U5       35      n[        R
                  " U R                  U5      n	UR                  U	5        M`     U V
s/ s H  oR                  U
S	5      PM     nn
U R                  X5      $ s  sn
f )
Nuserz/ajax-user/user-videos/z\?page=([0-9]+)z1http://www.teachertube.com/ajax-user/user-videos/z?page=zDownloading page /TeacherTube)
_match_valid_urlgroupr%   r.   r,   r-   	_MEDIA_REr*   
url_resultplaylist_result)r1   r   mobjuser_idurlsr3   pagespmore
video_urlsvurlentriess               r7   r8   TeacherTubeUserIE._real_extractn   s   $$S)**V$((6BJJt~~w78

5gYoNPWXY\Z\]AFwivVWUXYD,,T>OPQsRSTWX]T^S_<`aGDNNG<JKK
#	  EIIDD??47DI##G55 Js   ,Dr:   N)r;   r<   r=   r>   r?   r'   r@   rA   rR   _TESTr8   rC   r:   rD   r7   rF   rF   Z   s>    H+G:GjJI D,
 !E6rD   rF   )	r,   commonr   utilsr   r   r   r
   rF   r:   rD   r7   <module>rb      s0    	 ! L
M L
^$6 $6rD   