diff options
| author | 2021-12-01 14:44:00 -0500 | |
|---|---|---|
| committer | 2021-12-01 14:44:00 -0500 | |
| commit | a5aecc343fd2886e7ae09bb3e2afeec38f175755 (patch) | |
| tree | 06a284b3d73700bd38116423e2480afa516255c2 /gallery_dl/extractor/gelbooru_v02.py | |
| parent | fc8c5e642017e2b4e5299e2093e72b316479690d (diff) | |
New upstream version 1.19.3.upstream/1.19.3
Diffstat (limited to 'gallery_dl/extractor/gelbooru_v02.py')
| -rw-r--r-- | gallery_dl/extractor/gelbooru_v02.py | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/gallery_dl/extractor/gelbooru_v02.py b/gallery_dl/extractor/gelbooru_v02.py index e09e190..a42a202 100644 --- a/gallery_dl/extractor/gelbooru_v02.py +++ b/gallery_dl/extractor/gelbooru_v02.py @@ -27,8 +27,21 @@ class GelbooruV02Extractor(booru.BooruExtractor): params["pid"] = self.page_start params["limit"] = self.per_page + post = None while True: - root = self._api_request(params) + try: + root = self._api_request(params) + except ElementTree.ParseError: + if "tags" not in params or post is None: + raise + taglist = [tag for tag in params["tags"].split() + if not tag.startswith("id:<")] + taglist.append("id:<" + str(post.attrib["id"])) + params["tags"] = " ".join(taglist) + params["pid"] = 0 + continue + + post = None for post in root: yield post.attrib |
