diff --git a/gallery_dl/extractor/mangafreak.py b/gallery_dl/extractor/mangafreak.py
index ac6f0e5c..1ea2cd50 100644
--- a/gallery_dl/extractor/mangafreak.py
+++ b/gallery_dl/extractor/mangafreak.py
@@ -25,35 +25,30 @@ class MangafreakChapterExtractor(MangafreakBase, ChapterExtractor):
pattern = BASE_PATTERN + r"(/Read1_(.+)_(\d+[a-z]?))"
example = "https://ww2.mangafreak.me/Read1_Onepunch_Man_1"
- def __init__(self, match):
- ChapterExtractor.__init__(self, match, self.root + match.group(1))
- self.manga_slug, self.chapter = match.groups()[1:]
-
def metadata(self, page):
extr = text.extract_from(page)
manga = text.unescape(extr("
", " Chapter "))
title = text.unescape(extr("", " - MangaFreak"))
- chapter_str = extr("# ", " MANGA ONLINE")
- # Parse chapter number and minor suffix (e.g., "167e" -> chapter=167, minor="e")
- chapter, sep, minor = self.chapter.partition("e") if "e" in self.chapter else (self.chapter, "", "")
+ chapter_str = self.groups[2]
+ chapter, sep, minor = chapter_str.partition("e")
return {
"manga" : manga,
"title" : title,
"chapter" : text.parse_int(chapter),
"chapter_minor": sep + minor,
- "chapter_string": self.chapter,
- "manga_slug" : self.manga_slug,
+ "chapter_string": chapter_str,
+ "manga_slug" : self.groups[1],
"lang" : "en",
"language" : "English",
}
def images(self, page):
- # Extract all
tags pointing to manga images
return [
- (url, None)
- for url in text.extract_iter(page, '
", " Manga"))
- # Extract chapter list from table
- chapter_list = text.extr(page, "", "")
- if not chapter_list:
+ chapter_table = text.extr(page, "")
+ if not chapter_table:
return []
data = {
- "manga" : manga,
- "manga_slug" : self.manga_slug,
- "lang" : "en",
- "language" : "English",
+ "manga" : manga,
+ "manga_slug": self.groups[1],
+ "lang" : "en",
+ "language" : "English",
}
results = []
- for row in text.extract_iter(chapter_list, "", "
"):
- # Extract chapter link and date from each row
- chapter_link = text.extr(row, '", ""):
+ href = text.extr(row, '= 3:
- chapter_str = parts[-1]
- # Parse chapter number and minor suffix
- chapter, sep, minor = chapter_str.partition("e") if "e" in chapter_str else (chapter_str, "", "")
-
- chapter_data = {
- "chapter" : text.parse_int(chapter),
- "chapter_minor": sep + minor,
- "chapter_string": chapter_str,
- **data,
- }
- results.append((url, chapter_data))
+ results.append((url, {
+ "chapter" : text.parse_int(chapter),
+ "chapter_minor": sep + minor,
+ "chapter_string": chapter_str,
+ **data,
+ }))
return results