summaryrefslogtreecommitdiffstats
path: root/gallery_dl/extractor/hiperdex.py
diff options
context:
space:
mode:
Diffstat (limited to 'gallery_dl/extractor/hiperdex.py')
-rw-r--r--gallery_dl/extractor/hiperdex.py21
1 files changed, 10 insertions, 11 deletions
diff --git a/gallery_dl/extractor/hiperdex.py b/gallery_dl/extractor/hiperdex.py
index f15aab7..a75eee0 100644
--- a/gallery_dl/extractor/hiperdex.py
+++ b/gallery_dl/extractor/hiperdex.py
@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
-# Copyright 2020-2023 Mike Fährmann
+# Copyright 2020-2025 Mike Fährmann
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License version 2 as
@@ -9,9 +9,8 @@
"""Extractors for https://hiperdex.com/"""
from .common import ChapterExtractor, MangaExtractor
-from .. import text
+from .. import text, util
from ..cache import memcache
-import re
BASE_PATTERN = (r"((?:https?://)?(?:www\.)?"
r"(?:1st)?hiper(?:dex|toon)\d?\.(?:com|net|info|top))")
@@ -25,7 +24,7 @@ class HiperdexBase():
@memcache(keyarg=1)
def manga_data(self, manga, page=None):
if not page:
- url = "{}/manga/{}/".format(self.root, manga)
+ url = f"{self.root}/manga/{manga}/"
page = self.request(url).text
extr = text.extract_from(page)
@@ -80,10 +79,10 @@ class HiperdexChapterExtractor(HiperdexBase, ChapterExtractor):
return self.chapter_data(self.chapter)
def images(self, page):
+ pattern = util.re(r'id="image-\d+"\s+(?:data-)?src="([^"]+)')
return [
(url.strip(), None)
- for url in re.findall(
- r'id="image-\d+"\s+(?:data-)?src="([^"]+)', page)
+ for url in pattern.findall(page)
]
@@ -100,14 +99,14 @@ class HiperdexMangaExtractor(HiperdexBase, MangaExtractor):
def chapters(self, page):
data = self.manga_data(self.manga, page)
- self.manga_url = url = data["url"]
+ self.page_url = url = data["url"]
- url = self.manga_url + "ajax/chapters/"
+ url = self.page_url + "ajax/chapters/"
headers = {
"Accept": "*/*",
"X-Requested-With": "XMLHttpRequest",
"Origin": self.root,
- "Referer": "https://" + text.quote(self.manga_url[8:]),
+ "Referer": "https://" + text.quote(self.page_url[8:]),
}
html = self.request(url, method="POST", headers=headers).text
@@ -130,8 +129,8 @@ class HiperdexArtistExtractor(HiperdexBase, MangaExtractor):
example = "https://hiperdex.com/manga-artist/NAME/"
def __init__(self, match):
- self.root = text.ensure_http_scheme(match.group(1))
- MangaExtractor.__init__(self, match, self.root + match.group(2) + "/")
+ self.root = text.ensure_http_scheme(match[1])
+ MangaExtractor.__init__(self, match, self.root + match[2] + "/")
def chapters(self, page):
results = []