diff --git a/gallery_dl/extractor/weebcentral.py b/gallery_dl/extractor/weebcentral.py index fc1badbbb3..cacefd665d 100644 --- a/gallery_dl/extractor/weebcentral.py +++ b/gallery_dl/extractor/weebcentral.py @@ -50,14 +50,16 @@ class WeebcentralChapterExtractor(WeebcentralBase, ChapterExtractor): def metadata(self, page): extr = text.extract_from(page) manga_id = extr("'series_id': '", "'") - - data = self._extract_manga_data(manga_id) - data["chapter_id"] = self.groups[1] - data["chapter_type"] = extr("'chapter_type': '", "'") - + chapter_type = extr("'chapter_type': '", "'") chapter, sep, minor = extr("'number': '", "'").partition(".") - data["chapter"] = text.parse_int(chapter) - data["chapter_minor"] = sep + minor + + data = { + "chapter": text.parse_int(chapter), + "chapter_id": self.groups[1], + "chapter_type": chapter_type, + "chapter_minor": sep + minor, + } + data.update(self._extract_manga_data(manga_id)) return data diff --git a/test/results/weebcentral.py b/test/results/weebcentral.py index aef9903e0a..727b66be32 100644 --- a/test/results/weebcentral.py +++ b/test/results/weebcentral.py @@ -44,6 +44,21 @@ ], }, +{ + "#url" : "https://weebcentral.com/chapters/01J76XZ4PBJFDFCQA6NQP4HDNJ", + "#comment" : "wrong page count after chapter with less pages (#6966)", + "#class" : weebcentral.WeebcentralChapterExtractor, + "#pattern" : r"https://official\.lowee\.us/manga/Aria/0001-0\d\d\.png", + "#count" : 42, + + "chapter" : 1, + "chapter_id" : "01J76XZ4PBJFDFCQA6NQP4HDNJ", + "chapter_minor": "", + "chapter_type" : "Navigation", + "count" : 42, + "page" : range(1, 42), +}, + { "#url" : "https://weebcentral.com/series/01J76XY8G1GK8EJ9VQG92C3DKM/Aria", "#class" : weebcentral.WeebcentralMangaExtractor,