diff options
| author | 2019-12-25 19:40:28 -0500 | |
|---|---|---|
| committer | 2019-12-25 19:40:28 -0500 | |
| commit | f9a1a9dcb7df977eeac9544786df9c0b93795815 (patch) | |
| tree | 8cb69cf7685da8d7e4deb7dc1d6b209098e1ddfb /gallery_dl/extractor/behance.py | |
| parent | 0c73e982fa596da07f23b377621ab894a9e64884 (diff) | |
New upstream version 1.12.1upstream/1.12.1
Diffstat (limited to 'gallery_dl/extractor/behance.py')
| -rw-r--r-- | gallery_dl/extractor/behance.py | 27 |
1 files changed, 20 insertions, 7 deletions
diff --git a/gallery_dl/extractor/behance.py b/gallery_dl/extractor/behance.py index c701927..1126615 100644 --- a/gallery_dl/extractor/behance.py +++ b/gallery_dl/extractor/behance.py @@ -72,6 +72,11 @@ class BehanceGalleryExtractor(BehanceExtractor): "url": "0258fe194fe7d828d6f2c7f6086a9a0a4140db1d", "keyword": {"owners": ["Alex Strohl"]}, }), + # 'media_collection' modules + ("https://www.behance.net/gallery/88276087/Audi-R8-RWD", { + "count": 20, + "url": "6bebff0d37f85349f9ad28bd8b76fd66627c1e2f", + }), ) def __init__(self, match): @@ -112,20 +117,28 @@ class BehanceGalleryExtractor(BehanceExtractor): @staticmethod def get_images(data): """Extract image results from an API response""" - results = [] + result = [] + append = result.append for module in data["modules"]: + mtype = module["type"] - if module["type"] == "image": + if mtype == "image": url = module["sizes"]["original"] - results.append((url, module)) + append((url, module)) + + elif mtype == "media_collection": + for component in module["components"]: + url = component["sizes"]["source"] + append((url, module)) - elif module["type"] == "embed": + elif mtype == "embed": embed = module.get("original_embed") or module.get("embed") - url = "ytdl:" + text.extract(embed, 'src="', '"')[0] - results.append((url, module)) + if embed: + url = "ytdl:" + text.extract(embed, 'src="', '"')[0] + append((url, module)) - return results + return result class BehanceUserExtractor(BehanceExtractor): |
