diff --git a/gallery_dl/extractor/deviantart.py b/gallery_dl/extractor/deviantart.py
index d6669d13a5..d40700218a 100644
--- a/gallery_dl/extractor/deviantart.py
+++ b/gallery_dl/extractor/deviantart.py
@@ -447,6 +447,11 @@ class DeviantartStashExtractor(DeviantartExtractor):
"pattern": r"https://api-da\.wixmp\.com/_api/download/file",
"count": 1,
}),
+ # mixed stash folders and images (#659)
+ ("https://sta.sh/21l84tbph3sr", {
+ "url": "7527fb11b9e895960a02a26342bec91fbe25f55c",
+ "count": 12,
+ }),
("https://sta.sh/abcdefghijkl", {
"exception": exception.HttpError,
}),
@@ -468,12 +473,21 @@ def deviations(self):
return (self.api.deviation(deviation_id),)
else:
+ results = []
data = {"_extractor": DeviantartStashExtractor}
- page = text.extract(page, 'id="stash-body"', 'class="footer"')[0]
- return [
- (url, data)
- for url in text.extract_iter(page, ''):
+ url = text.extract(item, '