1
0
mirror of https://github.com/mikf/gallery-dl.git synced 2024-10-26 14:32:45 +02:00

[pixiv] retrieve 'caption' from AJAX API when empty (#4327, #5191)

This commit is contained in:
Mike Fährmann 2024-10-09 17:46:26 +02:00
parent 4adb1df55a
commit e05b9b101e
No known key found for this signature in database
GPG Key ID: 5680CA389D365A88
2 changed files with 12 additions and 1 deletions

View File

@ -76,6 +76,9 @@ class PixivExtractor(Extractor):
detail = self.api.illust_bookmark_detail(work["id"])
work["tags_bookmark"] = [tag["name"] for tag in detail["tags"]
if tag["is_registered"]]
if self.sanity_workaround and not work.get("caption"):
body = self._request_ajax("/illust/" + str(work["id"]))
work["caption"] = text.unescape(body["illustComment"])
if transform_tags:
transform_tags(work)
@ -180,7 +183,6 @@ class PixivExtractor(Extractor):
for key_app, key_ajax in (
("title" , "illustTitle"),
("image_urls" , "urls"),
("caption" , "illustComment"),
("create_date" , "createDate"),
("width" , "width"),
("height" , "height"),
@ -212,6 +214,7 @@ class PixivExtractor(Extractor):
translated_name = None
tags.append({"name": name, "translated_name": translated_name})
work["caption"] = text.unescape(body["illustComment"])
work["page_count"] = count = body["pageCount"]
if count == 1:
return ({"url": url},)

View File

@ -266,6 +266,14 @@ __tests__ = (
],
},
{
"#url" : "https://www.pixiv.net/en/artworks/103983466",
"#comment" : "empty 'caption' in App API response (#4327, #5191)",
"#class" : pixiv.PixivWorkExtractor,
"caption": r"re:Either she doesn't know how to pose or she can't move with that much clothing on her, in any case she's very well dressed for a holiday trip around town. Lots of stuff to see and a perfect day to grab some sweet pastries at the bakery.<br />...",
},
{
"#url" : "https://www.pixiv.net/en/artworks/966412",
"#category": ("", "pixiv", "work"),