Ë
    š„jÉ  ã                   ó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                 úM/var/www/html/GAP/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ð 	ô ˜jŸn™n¨WÓ5ò -¸×9PÑ9Pðið �W Gð	 :Qó :-ó .ˆð ",§¡°Ó!8×!>Ñ!>Ó!@÷	Lñ ˆg�vÁFð Ø"Ÿ™ wÓ/Ü! )§-¡-°Ó"8¸¸"Ð"=Ó>ó
ð Lˆñ Lð 	×Ñ˜G XÔ.ä!¤,¨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�   „ ØG€JàAØ1àØØ#ØØØ/ñ
ñð 3Ø1àØØ>ØØØ/Øñ
ñð 3Ø1àØØLØØØ/ñ
ñð/"€FóH0
rM   r   )
r8   Úcommonr   Úutilsr   r   r   r	   r
   r   rL   rM   rD   ú<module>rP      s#   ðÛ 	å !÷õ ôV
ˆmõ V
rM   