From 5e33f9981f601328ad8b9102a167aeaf95c64571 Mon Sep 17 00:00:00 2001 From: ClosedPort22 <44864697+ClosedPort22@users.noreply.github.com> Date: Sat, 4 Oct 2025 15:24:41 +0800 Subject: [PATCH] [wikimedia] fix name of files without extension --- gallery_dl/extractor/wikimedia.py | 4 +--- test/results/fandom.py | 13 +++++++++++++ 2 files changed, 14 insertions(+), 3 deletions(-) diff --git a/gallery_dl/extractor/wikimedia.py b/gallery_dl/extractor/wikimedia.py index 5ba47d2c..908ee58e 100644 --- a/gallery_dl/extractor/wikimedia.py +++ b/gallery_dl/extractor/wikimedia.py @@ -74,9 +74,7 @@ class WikimediaExtractor(BaseExtractor): m["name"]: m["value"] for m in image["commonmetadata"] or ()} - filename = image["canonicaltitle"] - image["filename"], _, image["extension"] = \ - filename.partition(":")[2].rpartition(".") + text.nameext_from_url(image["canonicaltitle"].partition(":")[2], image) image["date"] = text.parse_datetime( image["timestamp"], "%Y-%m-%dT%H:%M:%SZ") diff --git a/test/results/fandom.py b/test/results/fandom.py index 801629c5..358c9732 100644 --- a/test/results/fandom.py +++ b/test/results/fandom.py @@ -104,6 +104,19 @@ __tests__ = ( "#class" : wikimedia.WikimediaArticleExtractor, }, +{ + "#url" : "https://youtube.fandom.com/wiki/File:(500)_Montage_-_Reason_2_Die_Awakening", + "#comment" : "file without extension", + "#category": ("wikimedia", "fandom-youtube", "file"), + "#class" : wikimedia.WikimediaArticleExtractor, + + "extension": "", + "filename" : "(500) Montage - Reason 2 Die Awakening", + "page" : "File:(500)_Montage_-_Reason_2_Die_Awakening", + "sha1" : "6819869792d85927d60cc0a0cdc9e33dbd446731", + "size" : 81905, +}, + { "#url" : "https://youtube.fandom.com", "#category": ("wikimedia", "fandom-youtube", "wiki"),