From df718887c2110a97f3f3a0dcc175401d4bc7c75f Mon Sep 17 00:00:00 2001 From: blankie Date: Sun, 21 Jan 2024 09:50:27 +1100 Subject: [PATCH] [webtoons] fix extracting comic and episode name with commas --- gallery_dl/extractor/webtoons.py | 18 ++++++++++++++---- test/results/webtoons.py | 27 +++++++++++++++++++++++++++ 2 files changed, 41 insertions(+), 4 deletions(-) diff --git a/gallery_dl/extractor/webtoons.py b/gallery_dl/extractor/webtoons.py index a4259358..949c7cb7 100644 --- a/gallery_dl/extractor/webtoons.py +++ b/gallery_dl/extractor/webtoons.py @@ -88,10 +88,20 @@ class WebtoonsEpisodeExtractor(WebtoonsBase, GalleryExtractor): def metadata(self, page): extr = text.extract_from(page) - keywords = extr('', '<') + episode_name = extr('

#', '<') + else: + episode = "" + if extr('
', '') @@ -104,9 +114,9 @@ class WebtoonsEpisodeExtractor(WebtoonsBase, GalleryExtractor): "title_no" : self.title_no, "episode_no" : self.episode_no, "title" : text.unescape(title), - "episode" : keywords[1], - "comic_name" : text.unescape(keywords[0]), - "episode_name": text.unescape(keywords[2]), + "episode" : episode, + "comic_name" : text.unescape(comic_name), + "episode_name": text.unescape(episode_name), "username" : username, "author_name" : text.unescape(author_name), "description" : text.unescape(descr), diff --git a/test/results/webtoons.py b/test/results/webtoons.py index 82831f02..3e6beec3 100644 --- a/test/results/webtoons.py +++ b/test/results/webtoons.py @@ -61,10 +61,37 @@ __tests__ = ( "comic_name" : "I want to be a cute anime girl", "episode_name": "209 - The story's story", + "episode" : "214", "username" : "m9huj", "author_name" : "Azul Crescent", }, +{ + "#url" : "https://www.webtoons.com/en/canvas/i-want-to-be-a-cute-anime-girl/174-not-194-it-was-a-typo-later/viewer?title_no=349416&episode_no=179", + "#category": ("", "webtoons", "episode"), + "#class" : webtoons.WebtoonsEpisodeExtractor, + "#count" : 4, + + "comic_name" : "I want to be a cute anime girl", + "episode_name": "174 (not 194, it was a typo) - Later", + "episode" : "179", + "username" : "m9huj", + "author_name" : "Azul Crescent", +}, + +{ + "#url" : "https://www.webtoons.com/en/canvas/us-over-here/1-the-wheel/viewer?title_no=919536&episode_no=1", + "#category": ("", "webtoons", "episode"), + "#class" : webtoons.WebtoonsEpisodeExtractor, + "#count" : 59, + + "comic_name" : "Us, over here", + "episode_name": "1. The Wheel", + "episode" : "1", + "username" : "i94q8", + "author_name" : "spin.ani", +}, + { "#url" : "https://www.webtoons.com/en/comedy/live-with-yourself/list?title_no=919", "#comment" : "english",