aboutsummaryrefslogtreecommitdiffstats
path: root/gallery_dl/extractor/naverwebtoon.py
diff options
context:
space:
mode:
Diffstat (limited to 'gallery_dl/extractor/naverwebtoon.py')
-rw-r--r--gallery_dl/extractor/naverwebtoon.py24
1 files changed, 11 insertions, 13 deletions
diff --git a/gallery_dl/extractor/naverwebtoon.py b/gallery_dl/extractor/naverwebtoon.py
index 4137f5d..3211941 100644
--- a/gallery_dl/extractor/naverwebtoon.py
+++ b/gallery_dl/extractor/naverwebtoon.py
@@ -1,7 +1,7 @@
# -*- coding: utf-8 -*-
# Copyright 2021 Seonghyeon Cho
-# Copyright 2022-2033 Mike Fährmann
+# Copyright 2022-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
@@ -16,13 +16,13 @@ BASE_PATTERN = (r"(?:https?://)?comic\.naver\.com"
r"/(webtoon|challenge|bestChallenge)")
-class NaverwebtoonBase():
- """Base class for naver webtoon extractors"""
- category = "naverwebtoon"
+class NaverWebtoonBase():
+ """Base class for comic.naver.com extractors"""
+ category = "naver-webtoon"
root = "https://comic.naver.com"
-class NaverwebtoonEpisodeExtractor(NaverwebtoonBase, GalleryExtractor):
+class NaverWebtoonEpisodeExtractor(NaverWebtoonBase, GalleryExtractor):
subcategory = "episode"
directory_fmt = ("{category}", "{comic}")
filename_fmt = "{episode:>03}-{num:>02}.{extension}"
@@ -32,7 +32,7 @@ class NaverwebtoonEpisodeExtractor(NaverwebtoonBase, GalleryExtractor):
def __init__(self, match):
path, query = match.groups()
- url = "{}/{}/detail?{}".format(self.root, path, query)
+ url = f"{self.root}/{path}/detail?{query}"
GalleryExtractor.__init__(self, match, url)
query = text.parse_query(query)
@@ -54,8 +54,7 @@ class NaverwebtoonEpisodeExtractor(NaverwebtoonBase, GalleryExtractor):
extr('"painters":[', ']'), '"name":"', '"')]
}
- @staticmethod
- def images(page):
+ def images(self, page):
view_area = text.extr(page, 'id="comic_view_area"', '</div>')
return [
(url, None)
@@ -64,7 +63,7 @@ class NaverwebtoonEpisodeExtractor(NaverwebtoonBase, GalleryExtractor):
]
-class NaverwebtoonComicExtractor(NaverwebtoonBase, Extractor):
+class NaverWebtoonComicExtractor(NaverWebtoonBase, Extractor):
subcategory = "comic"
categorytransfer = True
pattern = BASE_PATTERN + r"/list(?:\.nhn)?\?([^#]+)"
@@ -90,14 +89,13 @@ class NaverwebtoonComicExtractor(NaverwebtoonBase, Extractor):
}
while True:
- data = self.request(url, headers=headers, params=params).json()
+ data = self.request_json(url, headers=headers, params=params)
path = data["webtoonLevelCode"].lower().replace("_c", "C", 1)
- base = "{}/{}/detail?titleId={}&no=".format(
- self.root, path, data["titleId"])
+ base = f"{self.root}/{path}/detail?titleId={data['titleId']}&no="
for article in data["articleList"]:
- article["_extractor"] = NaverwebtoonEpisodeExtractor
+ article["_extractor"] = NaverWebtoonEpisodeExtractor
yield Message.Queue, base + str(article["no"]), article
params["page"] = data["pageInfo"]["nextPage"]