[pixiv] support 'sketch' include (#8789)

This commit is contained in:
Mike Fährmann
2026-01-01 10:49:41 +01:00
parent 4e56be4def
commit 5e94bae906
3 changed files with 27 additions and 0 deletions

View File

@@ -4787,6 +4787,7 @@ Supported Values
* ``favorite``
* ``novel-user``
* ``novel-bookmark``
* ``sketch``
Note
It is possible to use ``"all"`` instead of listing all values separately.

View File

@@ -400,6 +400,14 @@ class PixivUserExtractor(Dispatch, PixivExtractor):
example = "https://www.pixiv.net/en/users/12345"
def items(self):
if (inc := self.config("include")) and (
"sketch" in inc or inc == "all"):
Extractor.initialize(self)
user = PixivAppAPI(self).user_detail(self.groups[0])
sketch = "https://sketch.pixiv.net/@" + user["user"]["account"]
else:
sketch = ""
base = f"{self.root}/users/{self.groups[0]}/"
return self._dispatch_extractors((
(PixivAvatarExtractor , base + "avatar"),
@@ -408,6 +416,7 @@ class PixivUserExtractor(Dispatch, PixivExtractor):
(PixivFavoriteExtractor , base + "bookmarks/artworks"),
(PixivNovelBookmarkExtractor, base + "bookmarks/novels"),
(PixivNovelUserExtractor , base + "novels"),
(PixivSketchExtractor , sketch),
), ("artworks",), (
("bookmark", "novel-bookmark"),
("user" , "novel-user"),

View File

@@ -14,6 +14,23 @@ __tests__ = (
"#class" : pixiv.PixivUserExtractor,
},
{
"#url" : "https://www.pixiv.net/en/users/173530",
"#class" : pixiv.PixivUserExtractor,
"#options" : {"include": "all"},
"#results" : (
"https://www.pixiv.net/users/173530/avatar",
"https://www.pixiv.net/users/173530/background",
"https://www.pixiv.net/users/173530/artworks",
"https://www.pixiv.net/users/173530/bookmarks/artworks",
"https://www.pixiv.net/users/173530/bookmarks/novels",
"https://www.pixiv.net/users/173530/novels",
"https://sketch.pixiv.net/@del_shannon",
"https://www.pixiv.net/users/173530/bookmarks/novels",
"https://www.pixiv.net/users/173530/novels",
),
},
{
"#url" : "https://www.pixiv.net/u/173530",
"#class" : pixiv.PixivUserExtractor,