From 40c1a8e47106222a34d8a2145ba865571613162d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mike=20F=C3=A4hrmann?= Date: Tue, 9 Apr 2024 17:35:05 +0200 Subject: [PATCH] [wikimedia] fix exception for files with empty 'metadata' --- gallery_dl/extractor/wikimedia.py | 4 ++-- test/results/fandom.py | 9 +++++++++ 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/gallery_dl/extractor/wikimedia.py b/gallery_dl/extractor/wikimedia.py index c15c8302..4976c078 100644 --- a/gallery_dl/extractor/wikimedia.py +++ b/gallery_dl/extractor/wikimedia.py @@ -77,10 +77,10 @@ class WikimediaExtractor(BaseExtractor): image["metadata"] = { m["name"]: m["value"] - for m in image["metadata"]} + for m in image["metadata"] or ()} image["commonmetadata"] = { m["name"]: m["value"] - for m in image["commonmetadata"]} + for m in image["commonmetadata"] or ()} filename = image["canonicaltitle"] image["filename"], _, image["extension"] = \ diff --git a/test/results/fandom.py b/test/results/fandom.py index 40d82e93..c876a64c 100644 --- a/test/results/fandom.py +++ b/test/results/fandom.py @@ -83,6 +83,15 @@ __tests__ = ( "width" : 728, }, +{ + "#url" : "https://hearthstone.fandom.com/wiki/Flame_Juggler", + "#comment" : "empty 'metadata'", + "#category": ("wikimedia", "fandom-hearthstone", "article"), + "#class" : wikimedia.WikimediaArticleExtractor, + + "metadata" : {}, +}, + { "#url" : "https://projectsekai.fandom.com/wiki/Project_SEKAI_Wiki", "#category": ("wikimedia", "fandom-projectsekai", "article"),