
    +iC                         S SK Jr  S SKr S SKJr  S SKJrJr  S SK	J
r
  Sr " S S\5      r\R                  " S	5      r\R                  " S
5      r " S S\5      rg! \ a	    S SKJr   NYf = f)    )print_functionN)
HTMLParser)retrieve_urldownload_file)prettyPrinterzhttps://1337x.toc                   F    \ rS rSr0 rSrSrSrSu  rr	r
rrS rS rS rSrg)	LeetxParser,   NF)atbodytrtdspanc                 L   U R                   =(       d    XR                  :H  U l         U R                   (       d  g [        U5      nUR                  SS5      nU R                   (       ak  XR                  :X  a\  UR                  S5      (       aF  [        U-   U R                  S'   [        U-   U R                  S'   [        U R                  S'   SU l        XR                  :X  a  S U l        XR                  :X  a.  SU l        S	 H   nXBR                  S
S5      ;   d  M  X@l          g    g g )Nhref z/torrentlink	desc_link
engine_urlnameT)seedsleechessizeclass)inside_tbodyTBODYdictgetA
startswithLEETX_DOMAINcurrent_resultcurrent_itemSPANTD
inside_row)selftagattrsr   items        ,/app/qBittorrent/data/nova3/engines/leetx.pyhandle_starttagLeetxParser.handle_starttag4   s     --B

1B   U yy$4??:3N3N*6*=D'/;d/BD,0<D- &D )) $D ''>"DO 599Wb11(,% 5	     c                     U R                   (       aT  U R                  (       aB  U R                  R                  U R                  S5      nX!-   U R                  U R                  '   g g g )Nr   )r   r#   r"   r   )r'   data
prev_values      r+   handle_dataLeetxParser.handle_dataT   sR    !2!2,,001B1BBGJ5?5FD 1 12 "3r.   c                 t   XR                   :X  a  SU l        g U R                  (       a/  U R                  (       a  XR                  :X  a  SU l        S U l        g U R                  (       aP  XR
                  :X  a@  U R                  S   U R                  S'   [        U R                  5        0 U l        S U l        g g g )NFr   leech)r   r   r&   r%   r#   TRr"   r   )r'   r(   s     r+   handle_endtagLeetxParser.handle_endtagZ   s     ** %D 4??sgg~#DO $D
 3''>+/+>+>y+ID($--."$D $D	 $2r.   )r#   r"   r&   r   )__name__
__module____qualname____firstlineno__r"   r#   r   r&   r   r   r6   r%   r$   r,   r2   r7   __static_attributes__ r.   r+   r	   r	   ,   s7    NLLJ?Aub"d@G%r.   r	   z><li class="last"><a href="/search/(.*)/([0-9])/">Last</a></li>z<a class\="(.*) btn-(.*)" target\="_blank" href\="(.*)"><span class\="icon"><i class\="flaticon-torrent-download"></i></span>ITORRENTS MIRROR</a>c                   @    \ rS rSr\rSrSSSSSSS	S
.rS rSS jr	Sr
g)leetxs   1337xAllMoviesTVMusicGamesAnimeApps)allmoviestvmusicgamesanimesoftwarec                    [        U5      n[        R                  U5      nU(       aM  UR                  5       (       a8  UR                  5       S   R	                  SS5      n[        [        U5      5        g [        S5        g )N   httphttpsr   )r   DOWNLOAD_PATTERNsearchgroupsreplaceprintr   )r'   infotorrent_pagetorrent_link_matchtorrent_files        r+   download_torrentleetx.download_torrent   se     $D)-44\B"4";";"="=-446q9AA&'RL--."Ir.   c                 t   UR                  5       nUS:X  a  SOSnSR                  U R                  X1S9nUS:w  a  X@R                  U   S-   -  n[	        US-   5      nSn[
        R                  U5      nU(       aB  UR                  5       S   R                  5       (       a  [        UR                  5       S   5      n[        5       nUR                  U5        UR                  5         [        S	US	-   5       H>  n	[	        U[        U	5      -   S-   5      nUR                  U5        UR                  5         M@     g )
NrJ   rV   zcategory-searchz#{url}/{search_page}/{search_query}/)urlsearch_pagesearch_query/z1/   rR   )lowerformatra   supported_categoriesr   PAGINATION_PATTERNrV   rW   isdigitintr	   feedcloserangestr)
r'   whatcatrb   
search_urlr0   
more_pagespagination_matchparsercurrent_pages
             r+   rV   leetx.search   s!   iik #&,h4E:AAk B F
 %<33C83>>J J-. 
-44T: 0 7 7 9! < D D F F-446q9:JD
 "!Z!^4L
S-> > DEDKKLLN	 5r.   r>   N)rJ   )r9   r:   r;   r<   r!   ra   r   rh   r^   rV   r=   r>   r.   r+   r@   r@   s   s3    
CD
 r.   r@   )
__future__r   rehtml.parserr   ImportErrorhelpersr   r   novaprinterr   r!   r	   compileri   rU   objectr@   r>   r.   r+   <module>r      s|   8 & 	&& 0 % "@%* @%F ZZ `a ::  r  s 9F 9c  &%&s   A A,+A,