
    i                     l    S r SSKJrJr  SSKJr  Sr " S S5      r " S S	\\5      r " S
 S\\5      r	g)z)Extractors for https://ww2.mangafreak.me/   )ChapterExtractorMangaExtractor   )textz*(?:https?://)?(?:ww[\dw]\.)?mangafreak\.mec                        \ rS rSrSrSrSrSrg)MangafreakBase   z$Base class for mangafreak extractors
mangafreakzhttps://ww2.mangafreak.me N)__name__
__module____qualname____firstlineno____doc__categoryroot__static_attributes__r       L/app/mltbenv/lib/python3.13/site-packages/gallery_dl/extractor/mangafreak.pyr   r      s    .H&Dr   r   c                   2    \ rS rSrSr\S-   rSrS rS r	Sr
g)	MangafreakChapterExtractor   z'Extractor for mangafreak manga chaptersz"(/Read1_([^/?#]+)_((\d+)([a-z])?))z.https://ww2.mangafreak.me/Read1_Onepunch_Man_1c           	      P   [         R                  " USS5      n[         R                  " USS5      R                  S5      S   nU R                  u  pEpgn[         R                  " U5      UU(       a  [         R                  " U5      OS[         R
                  " U5      Uc  SOUUSS	S
.$ )Nz<title>Read z	 Chapter zselected="selected"><z: r    enEnglish)manga
manga_slugtitlechapterchapter_minorchapter_stringlanglanguage)r   extr	partitiongroupsunescape	parse_int)	selfpager   r    _r   r#   r!   minors	            r   metadata#MangafreakChapterExtractor.metadata   s    		$<		$ 6<FFtLQO8<5~ "]]51'5:T]]51!^^G4#(=Re,!&	
 		
r   c                 p    Sn[         R                  " USU-   S5       Vs/ s H	  nX#-   S 4PM     sn$ s  snf )Nz$https://images.mangafreak.me/mangas/zsrc="")r   extract_iter)r+   r,   basepaths       r   images!MangafreakChapterExtractor.images*   sH    5 ))$$D
D [$D
 	
 
s   3r   N)r   r   r   r   r   BASE_PATTERNpatternexampler/   r6   r   r   r   r   r   r      s    1BBG>G
 
r   r   c                   0    \ rS rSrSr\r\S-   rSr	S r
Srg)MangafreakMangaExtractor2   z%Extractor for mangafreak manga seriesz(/Manga/([^/?#]+))z,https://ww2.mangafreak.me/Manga/Onepunch_Manc           
         [         R                  " USS5      nU(       d  g[         R                  " [         R                  " USS5      5      U R                  S   SSS	.n/ n[         R                  " S
5      R
                  n[         R                  " USS5       H  n[         R                  " USS5      nU(       d  M$  U R                  U-   nUR                  S5      S   n	U" U	5      R                  5       u  p[         R                  " USS5      R                  S5      S   nUR                  U[         R                  " U
5      UU	U(       a  [         R                  " U5      OSS.UE45        M     U$ )Nz<table>z</table>r   z<title>z Mangar   r   r   )r   r   r$   r%   z
(\d+)(\w*)z<tr>z</tr>z	<a href="r2   r-   r   z">r   z - r   )r!   r"   r#   r    )r   r&   r)   r(   rematchr3   r   
rpartitionr'   appendr*   )r+   r,   tabledataresultschapter_matchrowhrefurlr#   r!   r.   r    s                r   chapters!MangafreakMangaExtractor.chapters8   s<   		$	:6 --		$	8(LM++a.#	
 .44$$UFG<C99S+s3D))d"C!__S1!4N*>:AACNGIIc4-77>qAENNC"&.."9"'"0:?$--"6R	"
 "   = r   r   N)r   r   r   r   r   r   chapterclassr8   r9   r:   rJ   r   r   r   r   r<   r<   2   s    /-L22G<Gr   r<   N)
r   commonr   r   r   r   r8   r   r   r<   r   r   r   <module>rN      s<    0 4 <' '
1A 
:#~~ #r   