aboutsummaryrefslogtreecommitdiffstats
path: root/gallery_dl/extractor/issuu.py
diff options
context:
space:
mode:
Diffstat (limited to 'gallery_dl/extractor/issuu.py')
-rw-r--r--gallery_dl/extractor/issuu.py15
1 files changed, 8 insertions, 7 deletions
diff --git a/gallery_dl/extractor/issuu.py b/gallery_dl/extractor/issuu.py
index 65717b4..abbdfd5 100644
--- a/gallery_dl/extractor/issuu.py
+++ b/gallery_dl/extractor/issuu.py
@@ -29,9 +29,11 @@ class IssuuPublicationExtractor(IssuuBase, GalleryExtractor):
example = "https://issuu.com/issuu/docs/TITLE/"
def metadata(self, page):
- pos = page.rindex('id="initial-data"')
- data = util.json_loads(text.unescape(text.rextract(
- page, '<script data-json="', '"', pos)[0]))
+
+ data = text.extr(
+ page, '{\\"documentTextVersion\\":', ']\\n"])</script>')
+ data = util.json_loads(text.unescape(
+ '{"":' + data.replace('\\"', '"')))
doc = data["initialDocumentData"]["document"]
doc["date"] = text.parse_datetime(
@@ -39,7 +41,7 @@ class IssuuPublicationExtractor(IssuuBase, GalleryExtractor):
self._cnt = text.parse_int(doc["pageCount"])
self._tpl = "https://{}/{}-{}/jpg/page_{{}}.jpg".format(
- data["config"]["hosts"]["image"],
+ "image.isu.pub", # data["config"]["hosts"]["image"],
doc["revisionId"],
doc["publicationId"],
)
@@ -66,9 +68,8 @@ class IssuuUserExtractor(IssuuBase, Extractor):
url = base + "/" + str(pnum) if pnum > 1 else base
try:
html = self.request(url).text
- data = util.json_loads(text.unescape(text.extr(
- html, '</main></div><script data-json="', '" id="')))
- docs = data["docs"]
+ data = text.extr(html, '\\"docs\\":', '}]\\n"]')
+ docs = util.json_loads(data.replace('\\"', '"'))
except Exception as exc:
self.log.debug("", exc_info=exc)
return