[pixiv] support 'sketch' include (#8789)
This commit is contained in:
@@ -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.
|
||||
|
||||
|
||||
@@ -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"),
|
||||
|
||||
@@ -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,
|
||||
|
||||
Reference in New Issue
Block a user