aboutsummaryrefslogtreecommitdiffstats
path: root/gallery_dl/extractor/imgbox.py
diff options
context:
space:
mode:
Diffstat (limited to 'gallery_dl/extractor/imgbox.py')
-rw-r--r--gallery_dl/extractor/imgbox.py29
1 files changed, 12 insertions, 17 deletions
diff --git a/gallery_dl/extractor/imgbox.py b/gallery_dl/extractor/imgbox.py
index 7069717..5def88d 100644
--- a/gallery_dl/extractor/imgbox.py
+++ b/gallery_dl/extractor/imgbox.py
@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
-# Copyright 2014-2023 Mike Fährmann
+# Copyright 2014-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,8 +9,7 @@
"""Extractors for https://imgbox.com/"""
from .common import Extractor, Message, AsynchronousMixin
-from .. import text, exception
-import re
+from .. import text, util, exception
class ImgboxExtractor(Extractor):
@@ -31,18 +30,15 @@ class ImgboxExtractor(Extractor):
text.nameext_from_url(imgdata["filename"], imgdata)
yield Message.Url, self.get_image_url(imgpage), imgdata
- @staticmethod
- def get_job_metadata():
+ def get_job_metadata(self):
"""Collect metadata for extractor-job"""
return {}
- @staticmethod
- def get_image_keys():
+ def get_image_keys(self):
"""Return an iterable containing all image-keys"""
return []
- @staticmethod
- def get_image_metadata(page):
+ def get_image_metadata(self, page):
"""Collect metadata for a downloadable file"""
return text.extract_all(page, (
("num" , '</a> &nbsp; ', ' of '),
@@ -50,8 +46,7 @@ class ImgboxExtractor(Extractor):
("filename" , ' title="', '"'),
))[0]
- @staticmethod
- def get_image_url(page):
+ def get_image_url(self, page):
"""Extract download-url"""
return text.extr(page, 'property="og:image" content="', '"')
@@ -67,14 +62,15 @@ class ImgboxGalleryExtractor(AsynchronousMixin, ImgboxExtractor):
def __init__(self, match):
ImgboxExtractor.__init__(self, match)
- self.gallery_key = match.group(1)
+ self.gallery_key = match[1]
self.image_keys = []
def get_job_metadata(self):
page = self.request(self.root + "/g/" + self.gallery_key).text
if "The specified gallery could not be found." in page:
raise exception.NotFoundError("gallery")
- self.image_keys = re.findall(r'<a href="/([^"]+)"><img alt="', page)
+ self.image_keys = util.re(
+ r'<a href="/([^"]+)"><img alt="').findall(page)
title = text.extr(page, "<h1>", "</h1>")
title, _, count = title.rpartition(" - ")
@@ -97,14 +93,13 @@ class ImgboxImageExtractor(ImgboxExtractor):
def __init__(self, match):
ImgboxExtractor.__init__(self, match)
- self.image_key = match.group(1)
+ self.image_key = match[1]
def get_image_keys(self):
return (self.image_key,)
- @staticmethod
- def get_image_metadata(page):
- data = ImgboxExtractor.get_image_metadata(page)
+ def get_image_metadata(self, page):
+ data = ImgboxExtractor.get_image_metadata(self, page)
if not data["filename"]:
raise exception.NotFoundError("image")
return data