diff options
Diffstat (limited to 'gallery_dl/extractor/vsco.py')
| -rw-r--r-- | gallery_dl/extractor/vsco.py | 17 |
1 files changed, 15 insertions, 2 deletions
diff --git a/gallery_dl/extractor/vsco.py b/gallery_dl/extractor/vsco.py index a53409c..524bd81 100644 --- a/gallery_dl/extractor/vsco.py +++ b/gallery_dl/extractor/vsco.py @@ -32,7 +32,11 @@ class VscoExtractor(Extractor): yield Message.Directory, {"user": self.user} for img in self.images(): - if not img or "responsive_url" not in img: + if not img: + continue + elif "playback_url" in img: + img = self._transform_video(img) + elif "responsive_url" not in img: continue if img["is_video"]: @@ -118,6 +122,15 @@ class VscoExtractor(Extractor): media["image_meta"] = media.get("imageMeta") return media + @staticmethod + def _transform_video(media): + media["is_video"] = True + media["grid_name"] = "" + media["video_url"] = media["playback_url"] + media["responsive_url"] = media["poster_url"] + media["upload_date"] = media["created_date"] + return media + class VscoUserExtractor(VscoExtractor): """Extractor for a vsco user profile""" @@ -322,7 +335,7 @@ class VscoVideoExtractor(VscoExtractor): "grid_name" : "", "upload_date" : media["createdDate"], "responsive_url": media["posterUrl"], - "video_url" : "ytdl:" + media.get("playbackUrl"), + "video_url" : media.get("playbackUrl"), "image_meta" : None, "width" : media["width"], "height" : media["height"], |
