[gfycat] retry 404'ed videos on redgifs (closes #874)
This commit is contained in:
@@ -9,7 +9,7 @@
|
|||||||
"""Extractors for https://gfycat.com/"""
|
"""Extractors for https://gfycat.com/"""
|
||||||
|
|
||||||
from .common import Extractor, Message
|
from .common import Extractor, Message
|
||||||
from .. import text
|
from .. import text, exception
|
||||||
from ..cache import cache
|
from ..cache import cache
|
||||||
|
|
||||||
|
|
||||||
@@ -114,14 +114,27 @@ class GfycatImageExtractor(GfycatExtractor):
|
|||||||
("https://gfycat.com/detail/UnequaledHastyAnkole?tagname=aww", {
|
("https://gfycat.com/detail/UnequaledHastyAnkole?tagname=aww", {
|
||||||
"url": "e24c9f69897fd223343782425a429c5cab6a768e",
|
"url": "e24c9f69897fd223343782425a429c5cab6a768e",
|
||||||
}),
|
}),
|
||||||
|
# retry 404'ed videos on redgifs (#874)
|
||||||
|
("https://www.gfycat.com/foolishforkedabyssiniancat", {
|
||||||
|
"pattern": "https://redgifs.com/watch/foolishforkedabyssiniancat",
|
||||||
|
}),
|
||||||
("https://gfycat.com/gifs/detail/UnequaledHastyAnkole"),
|
("https://gfycat.com/gifs/detail/UnequaledHastyAnkole"),
|
||||||
("https://gfycat.com/ifr/UnequaledHastyAnkole"),
|
("https://gfycat.com/ifr/UnequaledHastyAnkole"),
|
||||||
("https://gfycat.com/ru/UnequaledHastyAnkole"),
|
("https://gfycat.com/ru/UnequaledHastyAnkole"),
|
||||||
)
|
)
|
||||||
|
|
||||||
def gfycats(self):
|
def items(self):
|
||||||
url = "https://api.gfycat.com/v1/gfycats/" + self.key
|
try:
|
||||||
return (self.request(url).json()["gfyItem"],)
|
gfycat = GfycatAPI(self).gfycat(self.key)
|
||||||
|
except exception.HttpError:
|
||||||
|
from .redgifs import RedgifsImageExtractor
|
||||||
|
url = "https://redgifs.com/watch/" + self.key
|
||||||
|
data = {"_extractor": RedgifsImageExtractor}
|
||||||
|
yield Message.Queue, url, data
|
||||||
|
else:
|
||||||
|
url = self._select_format(gfycat)
|
||||||
|
yield Message.Directory, gfycat
|
||||||
|
yield Message.Url, url, gfycat
|
||||||
|
|
||||||
|
|
||||||
class GfycatAPI():
|
class GfycatAPI():
|
||||||
|
|||||||
Reference in New Issue
Block a user