
    iJ                     r    S r SSKJrJr  SSKJr  SSKrSr " S S	\5      r " S
 S\5      r	 " S S\5      r
g)z(Extractors for https://www.slickpic.com/   )	ExtractorMessage   )text    Nz%(?:https?://)?([\w-]+)\.slickpic\.comc                   "    \ rS rSrSrSrS rSrg)SlickpicExtractor   z"Base class for slickpic extractorsslickpicc                 n    [         R                  " X5        US   U l        SU R                   S3U l        g )Nr   zhttps://z.slickpic.com)r   __init__userrootselfmatchs     J/app/mltbenv/lib/python3.13/site-packages/gallery_dl/extractor/slickpic.pyr   SlickpicExtractor.__init__   s/    4'!H	tyyk7	    )r   r   N)__name__
__module____qualname____firstlineno____doc__categoryr   __static_attributes__ r   r   r	   r	      s    ,H8r   r	   c                   N    \ rS rSrSrSrSrSrSr\	S-   r
SrS	 rS
 rS rS rSrg)SlickpicAlbumExtractor   z$Extractor for albums on slickpic.comalbum)z
{category}z{user[name]}z{album[id]} {album[title]}z&{num:>03}_{id}{title:?_//}.{extension}z{id}z/albums/([^/?#]+)z'https://USER.slickpic.com/albums/TITLE/c                 B    [         R                  X5        US   U l        g )Nr   )r	   r   r!   r   s     r   r   SlickpicAlbumExtractor.__init__&   s    ""4/1X
r   c              #     #    U R                  5       nU R                  U5      n[        R                  " US   5      [        R                  " US   5      S.[        R                  " US   5      [        R                  " US   5      U R
                  S.[        U5      S.n[        R                  SU4v   [        US	5       H  u  p4US
   S-   US   -   n[        R                  " US   UU[        R                  " US   5      [        R                  " US   5      [        R                  " US   5      US   US   S.5      nUR                  U5        [        R                  XT4v   M     g 7f)Naidtitle)idr&   uidr   )r'   namenick)r!   r   count r   url_rszz/o/fnamer'   widthheightdescr)urlnumr'   r/   r0   r&   description)metadataimagesr   	parse_intunescaper   lenr   	Directory	enumeratenameext_from_urlupdateUrl)r   dataimgsr3   imgr2   s         r   itemsSlickpicAlbumExtractor.items*   s>    }}{{4  U4tG}5
 tE{3d6l3		
 Y
 T))!$*HCi.5(3w<7C''G""#~~c$i8#~~c'l;#~~c(m<"7|"7|7 C JJt++s'' +s   E)E+c           	      D   U R                    SU R                   S3n[        R                  " U R	                  U5      R                  5      n[        R
                  " U" SS5      5      nUR                  S5      u  p4nUUU" SS5      U" SS5      U" S	S5      U" S
S5      S.$ )N/albums/z/?wallpaperz<title>z</title>z by ztk = ""zshd = "z
data-aid="z
data-uid=")r&   r   tkshdr%   r(   )r   r!   r   extract_fromrequestr8   
rpartition)r   r2   extrr&   _r   s         r   r5   SlickpicAlbumExtractor.metadataJ   s    8DJJ<{;  c!2!7!78d9j9:))&1$ (C()S),.,.
 	
r   c                     U R                   S-   n[        R                  " 5       US   US   US   US   SU R                  SSS	S
SSSS.nU R                  USUS9S   $ )Nz/xhr/photo/get/listrG   rH   r%   r(   012801024r,   false1)tmrG   rH   r%   r(   colsysvwvhskeyviewerpubsngwhqPOST)methodr?   list)r   timer!   request_json)r   r?   r2   s      r   r6   SlickpicAlbumExtractor.imagesZ   s{    ii//iik4j5k5k5kjj
    V$ ?GGr   )r!   N)r   r   r   r   r   subcategorydirectory_fmtfilename_fmtarchive_fmtBASE_PATTERNpatternexampler   rB   r5   r6   r   r   r   r   r   r      sA    .K3M;LK11G7G(@
 Hr   r   c                   ,    \ rS rSrSr\S-   rSrS rSr	g)SlickpicUserExtractoro   r   z(?:/gallery)?/?(?:$|[?#])zhttps://USER.slickpic.com/c              #      #    U R                  U R                  S-   5      R                  nS[        0nU R                  S-   n[        R                  " USU-   S5       H  n[
        R                  X4-   U4v   M     g 7f)Nz/gallery?viewer
_extractorrE   zhref="rF   )rJ   r   r   r   extract_iterr   Queue)r   pager?   baser!   s        r   rB   SlickpicUserExtractor.itemst   sm     ||DII(99:??45yy:%&&tX_cBE--t33 Cs   A:A<r   N)
r   r   r   r   re   ri   rj   rk   rB   r   r   r   r   rm   rm   o   s    K99G*G4r   rm   )r   commonr   r   r,   r   rb   ri   r	   r   rm   r   r   r   <module>rw      sC    / &  78	 8PH. PHf4- 4r   