1
0
mirror of https://github.com/mikf/gallery-dl.git synced 2024-11-25 20:22:36 +01:00

[imgur] print error message if no JSON data is found (#446)

This commit is contained in:
Mike Fährmann 2019-10-15 22:17:31 +02:00
parent 5882b00f2f
commit 7ebd984e8d
No known key found for this signature in database
GPG Key ID: 5680CA389D365A88
2 changed files with 14 additions and 4 deletions

View File

@ -54,9 +54,17 @@ class ImgurExtractor(Extractor):
return self.session.cookies
def _extract_data(self, path):
response = self.request(self.root + path, notfound=self.subcategory)
data = json.loads(text.extract(
response.text, "image : ", ",\n")[0])
page = self.request(self.root + path, notfound=self.subcategory).text
data = text.extract(page, "image : ", ",\n")[0]
if not data:
if ">Sign in required<" in page:
self.log.error("'Sign in required'")
else:
self.log.error("Unable to extract JSON data")
raise exception.StopExtraction()
data = json.loads(data)
try:
del data["adConfig"]
del data["isAd"]
@ -218,7 +226,7 @@ class ImgurAlbumExtractor(ImgurExtractor):
def items(self):
self.login()
album = self._extract_data("/a/" + self.key + "/all")
album = self._extract_data("/a/" + self.key)
images = album["album_images"]["images"]
del album["album_images"]

View File

@ -285,8 +285,10 @@ def setup_test_config():
config.set(("extractor", "password"), name)
config.set(("extractor", "nijie" , "username"), email)
config.set(("extractor", "seiga" , "username"), email)
config.set(("extractor", "danbooru" , "username"), None)
config.set(("extractor", "instagram", "username"), None)
config.set(("extractor", "imgur" , "username"), None)
config.set(("extractor", "twitter" , "username"), None)
config.set(("extractor", "mangoxo" , "username"), "LiQiang3")