From 32edf4fc7b5894f288f2cd40e18eca778f25a2c8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mike=20F=C3=A4hrmann?= Date: Wed, 13 Feb 2019 13:23:36 +0100 Subject: [PATCH] add '_extractor' info to manga extractor results --- gallery_dl/extractor/common.py | 2 ++ gallery_dl/extractor/fallenangels.py | 1 + gallery_dl/extractor/foolslide.py | 1 + gallery_dl/extractor/hbrowse.py | 3 ++- gallery_dl/extractor/hentai2read.py | 1 + gallery_dl/extractor/hentaihere.py | 1 + gallery_dl/extractor/kissmanga.py | 1 + gallery_dl/extractor/komikcast.py | 1 + gallery_dl/extractor/mangahere.py | 1 + gallery_dl/extractor/mangapanda.py | 1 + gallery_dl/extractor/mangapark.py | 1 + gallery_dl/extractor/mangareader.py | 3 ++- gallery_dl/extractor/readcomiconline.py | 1 + 13 files changed, 16 insertions(+), 2 deletions(-) diff --git a/gallery_dl/extractor/common.py b/gallery_dl/extractor/common.py index 893d15ff..5745a4d0 100644 --- a/gallery_dl/extractor/common.py +++ b/gallery_dl/extractor/common.py @@ -253,6 +253,7 @@ class MangaExtractor(Extractor): subcategory = "manga" categorytransfer = True + chapterclass = None reverse = True root = "" @@ -273,6 +274,7 @@ class MangaExtractor(Extractor): yield Message.Version, 1 for chapter, data in chapters: + data["_extractor"] = self.chapterclass yield Message.Queue, chapter, data def login(self): diff --git a/gallery_dl/extractor/fallenangels.py b/gallery_dl/extractor/fallenangels.py index b7e209e1..97ad828e 100644 --- a/gallery_dl/extractor/fallenangels.py +++ b/gallery_dl/extractor/fallenangels.py @@ -63,6 +63,7 @@ class FallenangelsChapterExtractor(ChapterExtractor): class FallenangelsMangaExtractor(MangaExtractor): """Extractor for manga from fascans.com""" + chapterclass = FallenangelsChapterExtractor category = "fallenangels" pattern = r"(?:https?://)?((manga|truyen)\.fascans\.com/manga/[^/]+)/?$" test = ( diff --git a/gallery_dl/extractor/foolslide.py b/gallery_dl/extractor/foolslide.py index 5249e1fe..0cbffb6b 100644 --- a/gallery_dl/extractor/foolslide.py +++ b/gallery_dl/extractor/foolslide.py @@ -158,6 +158,7 @@ def generate_extractors(): MaExtr.pattern = r"(?:https?://)?" + pattern + r"(/series/[^/?&#]+)" MaExtr.test = info.get("test-manga") MaExtr.root = root + MaExtr.chapterclass = ChExtr symtable[MaExtr.__name__] = MaExtr diff --git a/gallery_dl/extractor/hbrowse.py b/gallery_dl/extractor/hbrowse.py index a09711b7..34b95098 100644 --- a/gallery_dl/extractor/hbrowse.py +++ b/gallery_dl/extractor/hbrowse.py @@ -74,8 +74,9 @@ class HbrowseChapterExtractor(HbrowseBase, ChapterExtractor): class HbrowseMangaExtractor(HbrowseBase, MangaExtractor): """Extractor for manga from hbrowse.com""" - pattern = r"(?:https?://)?(?:www\.)?hbrowse\.com(/\d+)/?$" + chapterclass = HbrowseChapterExtractor reverse = False + pattern = r"(?:https?://)?(?:www\.)?hbrowse\.com(/\d+)/?$" test = ("https://www.hbrowse.com/10363", { "url": "b89682bfb86c11d2af0dc47463804ec3ac4aadd6", "keyword": "4b15fda1858a69de1fbf5afddfe47dd893397312", diff --git a/gallery_dl/extractor/hentai2read.py b/gallery_dl/extractor/hentai2read.py index e93c02ae..20bda06e 100644 --- a/gallery_dl/extractor/hentai2read.py +++ b/gallery_dl/extractor/hentai2read.py @@ -62,6 +62,7 @@ class Hentai2readChapterExtractor(Hentai2readBase, ChapterExtractor): class Hentai2readMangaExtractor(Hentai2readBase, MangaExtractor): """Extractor for hmanga from hentai2read.com""" + chapterclass = Hentai2readChapterExtractor pattern = r"(?:https?://)?(?:www\.)?hentai2read\.com(/[^/?&#]+)/?$" test = ( ("https://hentai2read.com/amazon_elixir/", { diff --git a/gallery_dl/extractor/hentaihere.py b/gallery_dl/extractor/hentaihere.py index 1e504042..a6eeb011 100644 --- a/gallery_dl/extractor/hentaihere.py +++ b/gallery_dl/extractor/hentaihere.py @@ -62,6 +62,7 @@ class HentaihereChapterExtractor(HentaihereBase, ChapterExtractor): class HentaihereMangaExtractor(HentaihereBase, MangaExtractor): """Extractor for hmanga from hentaihere.com""" + chapterclass = HentaihereChapterExtractor pattern = r"(?:https?://)?(?:www\.)?hentaihere\.com(/m/S\d+)/?$" test = ( ("https://hentaihere.com/m/S13812", { diff --git a/gallery_dl/extractor/kissmanga.py b/gallery_dl/extractor/kissmanga.py index fa638ac1..887d7104 100644 --- a/gallery_dl/extractor/kissmanga.py +++ b/gallery_dl/extractor/kissmanga.py @@ -180,6 +180,7 @@ class KissmangaChapterExtractor(KissmangaBase, ChapterExtractor): class KissmangaMangaExtractor(KissmangaBase, MangaExtractor): """Extractor for manga from kissmanga.com""" + chapterclass = KissmangaChapterExtractor pattern = (r"(?i)(?:https?://)?(?:www\.)?kissmanga\.com" r"(/Manga/[^/?&#]+/?)$") test = ( diff --git a/gallery_dl/extractor/komikcast.py b/gallery_dl/extractor/komikcast.py index fc6d0495..20df7814 100644 --- a/gallery_dl/extractor/komikcast.py +++ b/gallery_dl/extractor/komikcast.py @@ -86,6 +86,7 @@ class KomikcastChapterExtractor(KomikcastBase, ChapterExtractor): class KomikcastMangaExtractor(KomikcastBase, MangaExtractor): """Extractor for manga from komikcast.com""" + chapterclass = KomikcastChapterExtractor pattern = (r"(?:https?://)?(?:www\.)?komikcast\.com" r"(/(?:komik/)?[^/?&#]+)/?$") test = ( diff --git a/gallery_dl/extractor/mangahere.py b/gallery_dl/extractor/mangahere.py index 88960bc9..da85fd8b 100644 --- a/gallery_dl/extractor/mangahere.py +++ b/gallery_dl/extractor/mangahere.py @@ -85,6 +85,7 @@ class MangahereChapterExtractor(MangahereBase, ChapterExtractor): class MangahereMangaExtractor(MangahereBase, MangaExtractor): """Extractor for manga from mangahere.cc""" + chapterclass = MangahereChapterExtractor pattern = (r"(?:https?://)?(?:www\.|m\.)?mangahere\.c[co]" r"(/manga/[^/]+)/?(?:#.*)?$") test = ( diff --git a/gallery_dl/extractor/mangapanda.py b/gallery_dl/extractor/mangapanda.py index e2fd9f4b..9140af84 100644 --- a/gallery_dl/extractor/mangapanda.py +++ b/gallery_dl/extractor/mangapanda.py @@ -28,6 +28,7 @@ class MangapandaChapterExtractor(MangapandaBase, MangareaderChapterExtractor): class MangapandaMangaExtractor(MangapandaBase, MangareaderMangaExtractor): """Extractor for manga from mangapanda.com""" + chapterclass = MangapandaChapterExtractor pattern = r"(?:https?://)?(?:www\.)?mangapanda\.com(/[^/?&#]+)/?$" test = ("https://www.mangapanda.com/mushishi", { "url": "357f965732371cac1990fee8b480f62e29141a42", diff --git a/gallery_dl/extractor/mangapark.py b/gallery_dl/extractor/mangapark.py index 5a095530..f50065bc 100644 --- a/gallery_dl/extractor/mangapark.py +++ b/gallery_dl/extractor/mangapark.py @@ -102,6 +102,7 @@ class MangaparkChapterExtractor(MangaparkBase, ChapterExtractor): class MangaparkMangaExtractor(MangaparkBase, MangaExtractor): """Extractor for manga from mangapark.me""" + chapterclass = MangaparkChapterExtractor pattern = (r"(?:https?://)?(?:www\.)?mangapark\.(me|net|com)" r"(/manga/[^/?&#]+)/?$") test = ( diff --git a/gallery_dl/extractor/mangareader.py b/gallery_dl/extractor/mangareader.py index 93f087bc..b355b634 100644 --- a/gallery_dl/extractor/mangareader.py +++ b/gallery_dl/extractor/mangareader.py @@ -95,8 +95,9 @@ class MangareaderChapterExtractor(MangareaderBase, ChapterExtractor): class MangareaderMangaExtractor(MangareaderBase, MangaExtractor): """Extractor for manga from mangareader.net""" - pattern = r"(?:https?://)?(?:www\.)?mangareader\.net(/[^/?&#]+)/?$" + chapterclass = MangareaderChapterExtractor reverse = False + pattern = r"(?:https?://)?(?:www\.)?mangareader\.net(/[^/?&#]+)/?$" test = ("https://www.mangareader.net/mushishi", { "url": "bc203b858b4ad76e5d77e39118a7be0350e357da", "keyword": "031b3ea085921c552de017ecbb9b906e462229c9", diff --git a/gallery_dl/extractor/readcomiconline.py b/gallery_dl/extractor/readcomiconline.py index 10deb60d..cb855c72 100644 --- a/gallery_dl/extractor/readcomiconline.py +++ b/gallery_dl/extractor/readcomiconline.py @@ -62,6 +62,7 @@ class ReadcomiconlineIssueExtractor(ReadcomiconlineBase, ChapterExtractor): class ReadcomiconlineComicExtractor(ReadcomiconlineBase, MangaExtractor): """Extractor for comics from readcomiconline.to""" + chapterclass = ReadcomiconlineIssueExtractor subcategory = "comic" pattern = (r"(?i)(?:https?://)?(?:www\.)?readcomiconline\.to" r"(/Comic/[^/?&#]+/?)$")