
    VGh                     J    d dl Z ddlmZ ddlmZmZmZmZmZ  G d de      Z	y)    N   )InfoExtractor   )int_or_noneparse_durationstrip_or_nonetraverse_objurl_or_nonec                   d    e Zd ZdZdddddddd	d
ddddddddd	edddddddddd	d
dgZd Zy)NuvidIEz3https?://(?: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                    | j                  |      }ddd}d| d}| j                  ||ddd	      }| j                  d
| |dd      xs d}t        |j	                  d      xs | j                  d|dd            }|j	                  d      j                         D 	cg c]7  \  }}	|	r0|	|j	                  |      t        |j	                  |      d d       d9 }
}}	| j                  |
|       t        t        |dd            }t        j                  d|      D cg c]  }t        |      rd|i }}t        |j	                  d            r|j                  |d   dd       ||
|||ddS c c}	}w c c}w )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sourcer0   r   	thumb_urlr   s                 _/var/www/it7/html/youtubeDownloader/venv/lib/python3.12/site-packages/yt_dlp/extractor/nuvid.py_real_extractzNuvidIE._real_extract3   s   >>#& 
	
 DH:Muv((hL R) ) 
 (('z2.e ) = C@B 	 jnnW5 -9P9Pi WG	 :Q :- . ",!8!>!>!@	L gvF "w/!)--"8""=>
 L L 	GX.!,z:GX"YZ02

\^e1g'#,9% I'
 ' z~~h/0j&:!LM $ 
 	
!L's   #<E4"E:N)__name__
__module____qualname__
_VALID_URLlist_TESTSrE        rD   r   r      s    GJA1#/
 31>/
 31L/
/"FH0
rM   r   )
r8   commonr   utilsr   r   r   r	   r
   r   rL   rM   rD   <module>rP      s#    	 ! V
m V
rM   