diff --git a/gallery_dl/extractor/ao3.py b/gallery_dl/extractor/ao3.py index cb582023..3bb48b50 100644 --- a/gallery_dl/extractor/ao3.py +++ b/gallery_dl/extractor/ao3.py @@ -69,6 +69,12 @@ class Ao3WorkExtractor(Ao3Extractor): url = "{}/works/{}".format(self.root, work_id) extr = text.extract_from(self.request(url).text) + chapters = {} + cindex = extr(' id="chapter_index"', "") + for ch in text.extract_iter(cindex, ' value="', ""): + cid, _, cname = ch.partition('">') + chapters[cid] = text.unescape(cname) + fmts = {} path = "" download = extr(' class="download"', "") @@ -102,8 +108,7 @@ class Ao3WorkExtractor(Ao3Extractor): path.rpartition("updated_at=")[2]), "words" : text.parse_int( extr('