summaryrefslogtreecommitdiffstats
path: root/gallery_dl/extractor/gfycat.py
diff options
context:
space:
mode:
authorLibravatarUnit 193 <unit193@unit193.net>2020-08-15 17:48:11 -0400
committerLibravatarUnit 193 <unit193@unit193.net>2020-08-15 17:48:11 -0400
commit7cf59dc17c3607e096292462ed15d391be4e3dfd (patch)
tree50d2750e958f43271dc6cc5310211cf8f8bbd9d0 /gallery_dl/extractor/gfycat.py
parentba039cfb2e1ba2522ee0a0fa2a84a1a6579e4877 (diff)
New upstream version 1.14.4.upstream/1.14.4
Diffstat (limited to 'gallery_dl/extractor/gfycat.py')
-rw-r--r--gallery_dl/extractor/gfycat.py10
1 files changed, 10 insertions, 0 deletions
diff --git a/gallery_dl/extractor/gfycat.py b/gallery_dl/extractor/gfycat.py
index b4b0e49..ac1bca3 100644
--- a/gallery_dl/extractor/gfycat.py
+++ b/gallery_dl/extractor/gfycat.py
@@ -28,6 +28,9 @@ class GfycatExtractor(Extractor):
def items(self):
metadata = self.metadata()
for gfycat in self.gfycats():
+ if "gfyName" not in gfycat:
+ self.log.warning("Skipping '%s' (malformed)", gfycat["gfyId"])
+ continue
url = self._select_format(gfycat)
gfycat.update(metadata)
yield Message.Directory, gfycat
@@ -118,6 +121,10 @@ class GfycatImageExtractor(GfycatExtractor):
("https://www.gfycat.com/foolishforkedabyssiniancat", {
"pattern": "https://redgifs.com/watch/foolishforkedabyssiniancat",
}),
+ # malformed API response (#902)
+ ("https://gfycat.com/illexcitablehairstreak", {
+ "count": 0,
+ }),
("https://gfycat.com/gifs/detail/UnequaledHastyAnkole"),
("https://gfycat.com/ifr/UnequaledHastyAnkole"),
("https://gfycat.com/ru/UnequaledHastyAnkole"),
@@ -132,6 +139,9 @@ class GfycatImageExtractor(GfycatExtractor):
data = {"_extractor": RedgifsImageExtractor}
yield Message.Queue, url, data
else:
+ if "gfyName" not in gfycat:
+ self.log.warning("Skipping '%s' (malformed)", gfycat["gfyId"])
+ return
url = self._select_format(gfycat)
yield Message.Directory, gfycat
yield Message.Url, url, gfycat