diff --git a/gallery_dl/extractor/deviantart.py b/gallery_dl/extractor/deviantart.py index 12b2e14d..9fd28f6c 100644 --- a/gallery_dl/extractor/deviantart.py +++ b/gallery_dl/extractor/deviantart.py @@ -888,7 +888,7 @@ class DeviantartGalleryExtractor(DeviantartExtractor): subcategory = "gallery" archive_fmt = "g_{_username}_{index}.{extension}" pattern = (rf"{BASE_PATTERN}/gallery" - r"(?:/all|/recommended-for-you|/?\?catpath=)?/?$") + r"(?:/all|/recommended-for-you)?/?(\?(?!q=).*)?$") example = "https://www.deviantart.com/USER/gallery/" def deviations(self): diff --git a/test/results/deviantart.py b/test/results/deviantart.py index ee911e99..3e537ca8 100644 --- a/test/results/deviantart.py +++ b/test/results/deviantart.py @@ -205,6 +205,11 @@ __tests__ = ( "#class" : deviantart.DeviantartGalleryExtractor, }, +{ + "#url" : "https://www.deviantart.com/yinnyyany/gallery/all?order=newest", + "#class" : deviantart.DeviantartGalleryExtractor, +}, + { "#url" : "https://deviantart.com/shimoda7/avatar", "#category": ("", "deviantart", "avatar"),