diff options
| author | 2019-07-20 05:51:44 -0400 | |
|---|---|---|
| committer | 2019-07-20 05:51:44 -0400 | |
| commit | 2a63a9c9b7032a76894c48ac4d9cea732fcaee49 (patch) | |
| tree | 3d5f633ff69cd393036a3dabc4d4533c8484f9ad /gallery_dl/extractor/imgur.py | |
| parent | 195c45911e79c33cf0bb986721365fb06df5a153 (diff) | |
New upstream version 1.9.0upstream/1.9.0
Diffstat (limited to 'gallery_dl/extractor/imgur.py')
| -rw-r--r-- | gallery_dl/extractor/imgur.py | 15 |
1 files changed, 7 insertions, 8 deletions
diff --git a/gallery_dl/extractor/imgur.py b/gallery_dl/extractor/imgur.py index 0468c0b..c5e3d17 100644 --- a/gallery_dl/extractor/imgur.py +++ b/gallery_dl/extractor/imgur.py @@ -16,16 +16,15 @@ import json class ImgurExtractor(Extractor): """Base class for imgur extractors""" category = "imgur" + root = "https://imgur.com" def __init__(self, match): Extractor.__init__(self, match) self.item_id = match.group(1) self.mp4 = self.config("mp4", True) - def _get_data(self, urlpart): - response = self.request("https://imgur.com/" + urlpart, expect=(404,)) - if response.status_code == 404: - raise exception.NotFoundError(self.subcategory) + def _get_data(self, path): + response = self.request(self.root + path, notfound=self.subcategory) data = text.extract(response.text, "image : ", ",\n")[0] return self._clean(json.loads(data)) @@ -102,7 +101,7 @@ class ImgurImageExtractor(ImgurExtractor): ) def items(self): - image = self._get_data(self.item_id) + image = self._get_data("/" + self.item_id) url = self._prepare(image) yield Message.Version, 1 @@ -165,13 +164,13 @@ class ImgurAlbumExtractor(ImgurExtractor): ) def items(self): - album = self._get_data("a/" + self.item_id + "/all") + album = self._get_data("/a/" + self.item_id + "/all") images = album["album_images"]["images"] del album["album_images"] if int(album["num_images"]) > len(images): - url = ("https://imgur.com/ajaxalbums/getimages/" + - self.item_id + "/hit.json") + url = "{}/ajaxalbums/getimages/{}/hit.json".format( + self.root, self.item_id) images = self.request(url).json()["data"]["images"] yield Message.Version, 1 |
