
    V|h                     J    S SK r SSKJr  SSKJrJrJrJrJr   " S S\5      r	g)    N   )InfoExtractor   )int_or_noneparse_durationstrip_or_nonetraverse_objurl_or_nonec                   l    \ 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.SSSSSSS	S
S.S./rS rSrg)NuvidIE   z3https?://(?:www|m)\.nuvid\.com/video/(?P<id>[0-9]+)z0https://www.nuvid.com/video/6513023/italian-babe 772d2f8288f3d3c5c45f7a41761c78446513023mp4zitalian babeg     t@   zre:https?://.+\.jpg)idexttitleduration	age_limit	thumbnail)urlmd5	info_dictz!https://m.nuvid.com/video/6523263 ebd22ce8e47e1d9a4d0756a15c67da526523263z'Slut brunette college student anal dormg     Pz@)r   r   r   r   r   r   
thumbnailsz!http://m.nuvid.com/video/6415801/ 638d5ececb138d5753593f751ae3f6976415801z5My best friend wanted to fuck my wife for a long timeiZ  c                 .   U R                  U5      nSSS.nSU S3nU R                  XBSSS.S	9nU R                  S
U 3USSS9=(       d    Sn[        UR	                  S5      =(       d    U R                  SUSSS95      nUR	                  S5      R                  5        VV	s/ s H>  u  pU	(       d  M  U	UR	                  U5      [        UR	                  U5      S S 5      S.PM@     n
nn	U R                  X5        [        [        USS5      5      n[        R                  " SU5       Vs/ s H  n[        U5      (       d  M  SU0PM     nn[        UR	                  S5      5      (       a  UR                  US   SS.5        UU
UUUSS.$ s  sn	nf s  snf )N360p720p)lqhqz.https://www.nuvid.com/player_config_json/?vid=z(&aid=0&domain_id=0&embed=0&check_speed=0z0application/json, text/javascript, */*; q = 0.01z0application/x-www-form-urlencoded; charset=utf-8)AcceptzContent-Type)headerszhttp://m.nuvid.com/video/zDownloading video pageF)fatal r   )zB<span\s[^>]*?\btitle\s*=\s*(?P<q>"|'|\b)(?P<title>[^"]+)(?P=q)\s*>zb<div\s[^>]*?\bclass\s*=\s*(?P<q>"|'|\b)thumb-holder video(?P=q)>\s*<h5\b[^>]*>(?P<title>[^<]+)</h5zP<span\s[^>]*?\bclass\s*=\s*(?P<q>"|'|\b)title_thumb(?P=q)>(?P<title>[^<]+)</span)groupfiles)r   	format_idheightr   duration_formatzI<div\s+class\s*=\s*"video-tmb-wrap"\s*>\s*<img\s+src\s*=\s*"([^"]+)"\s*/>r   posterr   )r   
preferencer   )r   formatsr   r   r   r   )	_match_id_download_json_download_webpager   get_html_search_regexitemsr   _check_formatsr   r	   refindallr
   append)selfr   video_id	qualitiesjson_url
video_datawebpager   qualitysourcer1   r   	thumb_urlr   s                 P/home/james-whalen/.local/lib/python3.13/site-packages/yt_dlp/extractor/nuvid.py_real_extractNuvidIE._real_extract3   s   >>#& 
	
 DH:Muv((L R) ) 
 (('z2.e ) = C@B 	 jnnW5 -9P9Pi WG	 :Q :- . ",!8!>!>!@	L "AogF	
"w/!)--"8""=>
 "A	 	 L 	G.!,z:GX"YZ02

\^e1g'1g99% UI 1g 	 ' z~~h/00j&:!LM $ 
 	
!L's   #F44F+FF N)	__name__
__module____qualname____firstlineno__
_VALID_URLlist_TESTSrF   __static_attributes__rH       rE   r   r      s    GJA1#/
 31>/
 31L/
/"FH0
rQ   r   )
r9   commonr   utilsr   r   r   r	   r
   r   rH   rQ   rE   <module>rT      s#    	 ! V
m V
rQ   