
    i                         S r SSKJrJr  SSKJrJr  SSKJr  Sr	\	S-   r
 " S S	5      r " S
 S\\5      r " S S\\5      rg)z!Extractors for https://danke.moe/   )ChapterExtractorMangaExtractor   )textutil)memcachez"(?:https?://)?(?:www\.)?danke\.moez&/read(?:er)?/(?:manga|series)/([\w-]+)c                   8    \ rS rSrSrSrSr\" SS9S 5       rSr	g	)
DankefuerslesenBase   z)Base class for dankefuerslesen extractorsdankefuerslesenzhttps://danke.moer   )keyargc                 H    U R                    SU S3nU R                  U5      $ )Nz/api/series//)rootrequest_json)selfslugurls      Q/app/mltbenv/lib/python3.13/site-packages/gallery_dl/extractor/dankefuerslesen.py_manga_infoDankefuerslesenBase._manga_info   s)    <vQ/  %%     N)
__name__
__module____qualname____firstlineno____doc__categoryr   r   r   __static_attributes__r   r   r   r
   r
      s&    3 HDQ& &r   r
   c                   >    \ rS rSrSr\S-   rSrS rS r	S r
S rS	rg
)DankefuerslesenChapterExtractor   u.   Extractor for Danke fürs Lesen manga chaptersz	/([\w-]+)z)https://danke.moe/read/manga/TITLE/123/1/c                     U R                  SS5      U l        U R                  (       a,  U R                  S   S-   U l        U R                  S S U l        g g )NzipFz.{extension})configr%   directory_fmtfilename_fmt)r   s    r   _init%DankefuerslesenChapterExtractor._init#   sM    ;;ue,88 $ 2 22 6 GD!%!3!3CR!8D r   c                    U R                   u  p#U R                  U5      nSU;   a,  UR                  S5      u  pVnUR                  SS5      nSU-   nOUnSnUS   U   n[	        [        US   R                  5       5      5      u  ol        U R                  (       d   U R                   SU SUS    S	U	 S	3U l
        US
   US   US   US   US   US
   [        R                  " US   5      [        R                  " U5      UUS   U	   R                  S5      [        R                  " U	5      U R                  US   U	   5      [        R                   [        R                   S.$ )N-. chaptersgroupsz/media/manga/z
/chapters/folderr   titler   authorartistdescriptionvolumez & release_date)manga
manga_slugr4   r5   r6   r3   r7   chapterchapter_minorgroupgroup_iddatelanglanguage)r1   r   
rpartitionreplacenextiteritems_filesr%   r   baser   	parse_intsplitparse_timestampr   NONE)
r   pager   chr9   r;   sepminordatar>   s
             r   metadata(DankefuerslesenChapterExtractor.metadata)   s_   ;;  &"9"$--"4G%C%B%KEGEZ $ $T$x.*>*>*@%A B+xx II;mD6 :!(^,AhZq:DI  .-// /w-..h8..1"/(399%@..2..tN/CH/MN))))
 	
r   c                     U R                   (       a  gU R                  nU R                   Vs/ s H	  o2U-   S 4PM     sn$ s  snf )Nr   )r%   rH   rG   )r   rM   rH   files       r   images&DankefuerslesenChapterExtractor.imagesM   s8    88yy04<d#<<<s   A c                 z    U R                   (       a*  U R                  u  p#U R                   SU SU S3nSSUS.4$ g )Nz/api/download_chapter/r   archiver%   )type	extensionr   )r%   r1   r   )r   rM   r   rN   r   s        r   assets&DankefuerslesenChapterExtractor.assetsT   sN    88{{HDYYK5dV1RDBC&"    r   )rG   rH   r(   r)   r%   N)r   r   r   r   r   MANGA_PATTERNpatternexampler*   rR   rV   r\   r    r   r   r   r"   r"      s)    8l*G9G9"
H=r   r"   c                   .    \ rS rSrSr\rSr\r	Sr
S rSrg)DankefuerslesenMangaExtractor_   u%   Extractor for Danke fürs Lesen mangaFz#https://danke.moe/read/manga/TITLE/c                 6   / nU R                  U R                  S   5      R                  5       n[        R                  US'   [        R                  US'   U R
                   SUS    S3nUR                  S5      R                  5        H  u  pVSU;   aG  UR                  S5      u  pxn	UR                  SS	5      n[        R                  " U5      US
'   X-   US'   O[        R                  " U5      US
'   SUS'   UR                  U U S30 UEUE45        M     U$ )N    r@   rA   z/read/manga/r   r   r0   r.   r-   r;   r<   r/   z/1/)r   r1   copyr   rL   r   poprF   rB   rC   r   rI   append)
r   rM   resultsr9   rH   rN   rQ   r;   rO   rP   s
             r   r0   &DankefuerslesenMangaExtractor.chaptersf   s     Q0557		f IIj))Lvq9		*-335HBby&(mmC&8#eZZS)"&.."9Y(+_%"&.."4Y(*_%NNtfRD,.?.?$.?@A 6 r   r   N)r   r   r   r   r   r"   chapterclassreverser^   r_   r`   r0   r    r   r   r   rb   rb   _   s    /2LGG3Gr   rb   N)r   commonr   r   r/   r   r   cacher   BASE_PATTERNr^   r
   r"   rb   r   r   r   <module>rp      sM    ( 4  4HH& &>&9;K >B$7 r   