
    VGh&E                         d dl Z d dlZddlmZ ddlmZmZmZmZm	Z	m
Z
mZmZmZmZ d Zd Z G d d	e      Z G d
 de      Zy)    N   )InfoExtractor   )
ExtractorErrorint_or_none
js_to_jsonmerge_dictsparse_durationtraverse_objtry_callurl_or_noneurljoinvariadicc           	          t        j                  | j                  | j                  i ddddddddd	d
dddddddddddddddddddddd                   j	                         S )!Nu   ЅSu   ІIu   ЈJu   АAu   ВBu   ЕEu   КKu   МMu   НHu   ОOu   РPu   СCu   ХX,/.+~=)base64	b64decode	translate	maketransdecode)texts    ^/var/www/it7/html/youtubeDownloader/venv/lib/python3.12/site-packages/yt_dlp/extractor/txxx.pydecode_base64r+      s    DNN4>> ;#;#; 	#; 	#	;
 	#; 	#; 	#; 	#; 	#; 	#; 	#; 	#; 	#; 	S; 	S;  	S!; ,  	" 
#    c                     t        |      D cg c]A  \  }j                  d      r+t        d|  t        d               t	        fd      |dC c}}S c c}}w )N	video_urlhttps://c                  D    t         d         d   j                  d      S )Nformatr   _)r   lstrip)videos   r*   <lambda>zget_formats.<locals>.<lambda>+   s     huX&?&B&I&I#&N r,   )url	format_idquality)	enumerategetr   r+   r   )host
video_fileindexr4   s      `r*   get_formatsr>   (   sn    
 $J/	K K %599[3I $(-k8J*KLNO K K Ks   AAc                   "   e Zd ZdZddj	                   eej                  e             dZddj	                   eej                  e             dgZ	ddd	d
dddde
e
e
ddddddd	d
dddde
e
e
dddddddddddde
e
e
dddddddddddd e
e
e
dd!ddd"d#d$d%dd&d'd(e
e
e
dd)ddd*d#d$d%dd&d'd(e
e
e
dd)ddd+d,d-d.dd/d0d1e
e
e
dd2ddd3d,d-d.dd/d0d1e
e
e
dd2ddd4d5d6d7dd8d9d:e
e
e
dd;ddd<d=d>d?dd@dAdBe
e
e
ddCdddDdEdFdGddHdIdJe
e
e
ddKdddLdMdNdOddPdQd:e
e
e
ddRdddSdMdNdOddPdQd:e
e
e
ddRdddTdUdVdWddXdYdZe
e
e
dd[ddd\dUdVdWddXdYdZe
e
e
dd[ddd]d^d_d`ddadbdce
e
e
dddddded^d_d`ddadbdce
e
e
dddddgZdfdgdgddhdidje
e
e
ddkddlgZdpdmZdn Zyo)qTxxxIE)z
hclips.comz	hdzog.comz
hdzog.tubezhotmovs.comzhotmovs.tubez
inporn.comzprivatehomeclips.comztubepornclassic.comztxxx.comz	txxx.tubezupornia.comzupornia.tubezvjav.comz	vjav.tubezvxxx.comzvoyeurhit.comzvoyeurhit.tubez)(?x)
        https?://(?:www\.)?(?P<host>|zN)/
        (?:videos?[/-]|embed/)(?P<id>\d+)(?:/(?P<display_id>[^/?#]+))?
    z;<iframe[^>]+?src=(["\'])(?P<url>(?:https?:)?//(?:www\.)?(?:z)/embed/[^"\']*)\1z>https://txxx.com/videos/16574965/digital-desire-malena-morgan/ c54e4ace54320aaf8e2a72df8785939116574965zdigital-desire-malena-morganmp4zDigital Desire - Malena MorganzLois Argentumi     zPhttps://tn.txxx.tube/contents/videos_sources/16574000/16574965/screenshots/1.jpg)id
display_idexttitleuploaderduration
view_count
like_countdislike_count	age_limit	thumbnailr6   md5	info_dictz?https://txxx.tube/videos/16574965/digital-desire-malena-morgan/zhttps://vxxx.com/video-68925/ 1fcff3748b0c5b41fe41d0afa22409e168925zMalena MorganzHuge HugheszIhttps://tn.vxxx.com/contents/videos_sources/68000/68925/screenshots/1.jpgzFhttps://hclips.com/videos/6291073/malena-morgan-masturbates-her-sweet/ a5dd4f83363972ee043313cff85e7e266291073z#malena-morgan-masturbates-her-sweetz#Malena Morgan masturbates her sweetz	John Salti  zOhttps://hctn.nv7s.com/contents/videos_sources/6291000/6291073/screenshots/1.jpgzZhttps://hdzog.com/videos/67063/gorgeous-malena-morgan-will-seduce-you-at-the-first-glance/ f8bdedafd45d1ec2875c43fe33a846d367063z:gorgeous-malena-morgan-will-seduce-you-at-the-first-glancez:Gorgeous Malena Morgan will seduce you at the first glance	momlessoniY  zJhttps://tn.hdzog.com/contents/videos_sources/67000/67063/screenshots/1.jpgz[https://hdzog.tube/videos/67063/gorgeous-malena-morgan-will-seduce-you-at-the-first-glance/zdhttps://hotmovs.com/videos/8789287/unbelievable-malena-morgan-performing-in-incredible-masturantion/ 71d32c51584876472db87e561171a3868789287z@unbelievable-malena-morgan-performing-in-incredible-masturantionz@Unbelievable Malena Morgan performing in incredible masturantionzDavit Sanchezi  zQhttps://tn.hotmovs.com/contents/videos_sources/8789000/8789287/screenshots/10.jpgzehttps://hotmovs.tube/videos/8789287/unbelievable-malena-morgan-performing-in-incredible-masturantion/z3https://inporn.com/video/517897/malena-morgan-solo/ 344db467481edf78f193cdf5820a7cfb517897zmalena-morgan-solozMalena Morgan - Soloz
Ashley Oxy  z3https://iptn.m3pd.com/media/tn/sources/517897_1.jpgzChttps://privatehomeclips.com/videos/3630599/malena-morgan-cam-show/ ea657273e352493c5fb6357fbfa4f1263630599zmalena-morgan-cam-showzmalena morgan cam show
Member9915i"  zPhttps://hctn.nv7s.com/contents/videos_sources/3630000/3630599/screenshots/15.jpgzZhttps://tubepornclassic.com/videos/1015455/mimi-rogers-full-body-massage-nude-compilation/ 2e9a6cf610c9862e86e0ce24f08f44271015455z.mimi-rogers-full-body-massage-nude-compilationz2Mimi Rogers - Full Body Massage (Nude) compilation88bhutoi  zXhttps://tn.tubepornclassic.com/contents/videos_sources/1015000/1015455/screenshots/6.jpgzVhttps://upornia.com/videos/1498858/twistys-malena-morgan-starring-at-dr-morgan-baller/ 7ff7033340bc88a173198b7c22600e4f1498858z2twistys-malena-morgan-starring-at-dr-morgan-ballerz5Twistys - Malena Morgan starring at Dr. Morgan-BallermindgeekzPhttps://tn.upornia.com/contents/videos_sources/1498000/1498858/screenshots/1.jpgzWhttps://upornia.tube/videos/1498858/twistys-malena-morgan-starring-at-dr-morgan-baller/zFhttps://vjav.com/videos/11761/yui-hatano-in-if-yui-was-my-girlfriend2/ 6de5bc1f13bdfc3491a77f23edb1676f11761z'yui-hatano-in-if-yui-was-my-girlfriend2z&Yui Hatano in If Yui Was My Girlfriend	Matheus69i  zJhttps://tn.vjav.com/contents/videos_sources/11000/11761/screenshots/23.jpgzGhttps://vjav.tube/videos/11761/yui-hatano-in-if-yui-was-my-girlfriend2/z\https://voyeurhit.com/videos/332875/charlotte-stokely-elle-alexandra-malena-morgan-lingerie/ 12b4666e9c3e60dafe9182e5d12aae33332875z7charlotte-stokely-elle-alexandra-malena-morgan-lingeriez9Charlotte Stokely, Elle Alexandra, Malena Morgan-LingeriezKyle Robertsi  zPhttps://tn.voyeurhit.com/contents/videos_sources/332000/332875/screenshots/1.jpgz]https://voyeurhit.tube/videos/332875/charlotte-stokely-elle-alexandra-malena-morgan-lingerie/zHhttps://pornzog.com/video/9125519/michelle-malone-dreamgirls-wild-wet-3/5119660z)Michelle Malone - Dreamgirls - Wild Wet 3FallenAngel12i  zOhttps://hctn.nv7s.com/contents/videos_sources/5119000/5119660/screenshots/1.jpg)r6   rS   c                      | j                   ||fd|i|}t        |d      r$| j                  t        d|d    d      |      |xs i S )NfatalerrorzTxxx said: T)expectedrq   )_download_jsonr   _error_or_warningr   )selfr6   video_idrq   kwargscontents         r*   	_call_apizTxxxIE._call_apik  sk    %$%%c8K5KFK)((gg./04*AHM ) O O}"r,   c                 @   | j                  |      j                  ddd      \  }}}|dd}| j                  d| d| d|d	d
|      }t        dt        |      dz  z         ddt        |      dz  z   }| j                  d| d| d| d|d|      }||t	        |d      t	        |d      t        t	        |d            t        t	        |d            t        t	        |d            t        t	        |d            dt	        |ddt        hf      t        ||      dS )NrF   r;   rG   XMLHttpRequest)RefererzX-Requested-Withr/   z/api/videofile.php?video_id=z&lifetime=8640000TzDownloading video file info)rq   noteheadersg    .Ar   i  z/api/json/video/86400/z.jsonzDownloading video info)r   r   )r4   rI   )r4   userusername)r4   rK   )r4   
statisticsviewed)r4   r   likes)r4   r   dislikesrE   r4   thumbsrc)rF   rG   rI   rJ   rK   rL   rM   rN   rO   rP   formats)	_match_valid_urlgroupr{   intr   r
   r   r   r>   )	rw   r6   rx   r;   rG   r   r<   slug
video_infos	            r*   _real_extractzTxxxIE._real_extractr  sX   %)%:%:3%?%E%EdFT`%a"$
!7GH^^tf8
BSTD'Dg $ W
 cS]c1234Adc(mt>S6T5UV^^tf24&(5I3W $ F

 $!*.@A$Z1NO&|J@U'VW%l:?`&ab%l:?_&`a(jBe)fg%j7J2VW"44
 	
r,   N)F)__name__
__module____qualname___DOMAINSjoinmapreescape
_VALID_URL_EMBED_REGEXr   _TESTS_WEBPAGE_TESTSr{   r    r,   r*   r@   r@   0   s-   H&%%(XXc"))X.F%G$H IJ SSVS[S[\_`b`i`iks\tSuRv  wI  J  KLO185' k
" Q185' k
" /1!$% d
" X1?:# j
" l1VQ# e
" m1VQ# e
" v1\W' l
" w1\W' l
" E1.+$ N
" U12-$ k
" l1JI! s
" h1NL" k
" i1NL" k
" X1C=# e
" Y1C=# e
" n1SP& k
" o1SP& k
APFd Z#@' j
 N"
r,   r@   c                   B    e Zd ZdZdddddddd	d
eeeddddddgZd Zy)	PornTopIEzWhttps?://(?P<host>(?:www\.)?porntop\.com)/video/(?P<id>\d+)(?:/(?P<display_id>[^/?]+))?z[https://porntop.com/video/101569/triple-threat-with-lia-lor-malena-morgan-and-dani-daniels/ 612ba7b3cb99455b382972948e200b08101569z9triple-threat-with-lia-lor-malena-morgan-and-dani-danielsrD   z:Triple Threat With Lia Lor, Malena Morgan And Dani Danielsz$md5:285357d9d3a00ce5acb29f39f826dbf6PatrickBushr_   rE   iU_20201231z4https://tn.porntop.com/media/tn/sources/101569_1.jpg)rF   rG   rH   rI   descriptionrJ   rK   rL   rM   rN   rO   	timestampupload_daterP   rQ   c           
      ^   | j                  |      j                  ddd      \  }}}| j                  ||      }| j                  | j	                  d|d|t
        d      |d	      }| j                  t        | j                  d
|dd            |      }t        ||dt        ||      d|      S )NrF   r;   rG   z\bschemaJson\s*=zJSON-LDz{[^<]+?VideoObject[^<]+};)transform_sourcecontains_patternTrt   z3window\.initPlayer\(.*}}},\s*'(?P<json_b64c>[^']+)'	json_urls	json_b64c)r   rE   )rF   rG   rO   r   )r   r   _download_webpage_json_ld_search_jsonr   _parse_jsonr+   _search_regexr	   r>   )rw   r6   rx   r;   rG   webpagejson_ldr<   s           r*   r   zPornTopIE._real_extract  s    %)%:%:3%?%E%EdFT`%a"$
((h7-- 1 1)XPZ8 !2 !:;C4   Q %%mD4F4FB[ 5G 55 '67?A
 $"44	

  	r,   N)r   r   r   r   r   r   r   r   r,   r*   r   r     sM    kJl1UQA% #%O
 F*r,   r   )r$   r   commonr   utilsr   r   r   r	   r
   r   r   r   r   r   r+   r>   r@   r   r   r,   r*   <module>r      sC     	 !  *K[
] [
|
( (r,   