[bluesky] add 'info' extractor
This commit is contained in:
@@ -142,7 +142,7 @@ Consider all listed sites to potentially be NSFW.
|
|||||||
<tr>
|
<tr>
|
||||||
<td>Bluesky</td>
|
<td>Bluesky</td>
|
||||||
<td>https://bsky.app/</td>
|
<td>https://bsky.app/</td>
|
||||||
<td>Avatars, Backgrounds, Feeds, Followed Users, Hashtags, Likes, Lists, Media Files, Posts, Replies, Search Results, User Profiles</td>
|
<td>Avatars, Backgrounds, Feeds, Followed Users, Hashtags, User Profile Information, Likes, Lists, Media Files, Posts, Replies, Search Results, User Profiles</td>
|
||||||
<td>Supported</td>
|
<td>Supported</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
|
|||||||
@@ -205,6 +205,7 @@ class BlueskyUserExtractor(BlueskyExtractor):
|
|||||||
def items(self):
|
def items(self):
|
||||||
base = "{}/profile/{}/".format(self.root, self.user)
|
base = "{}/profile/{}/".format(self.root, self.user)
|
||||||
return self._dispatch_extractors((
|
return self._dispatch_extractors((
|
||||||
|
(BlueskyInfoExtractor , base + "info"),
|
||||||
(BlueskyAvatarExtractor , base + "avatar"),
|
(BlueskyAvatarExtractor , base + "avatar"),
|
||||||
(BlueskyBackgroundExtractor, base + "banner"),
|
(BlueskyBackgroundExtractor, base + "banner"),
|
||||||
(BlueskyPostsExtractor , base + "posts"),
|
(BlueskyPostsExtractor , base + "posts"),
|
||||||
@@ -301,6 +302,17 @@ class BlueskyPostExtractor(BlueskyExtractor):
|
|||||||
return self.api.get_post_thread(self.user, self.post_id)
|
return self.api.get_post_thread(self.user, self.post_id)
|
||||||
|
|
||||||
|
|
||||||
|
class BlueskyInfoExtractor(BlueskyExtractor):
|
||||||
|
subcategory = "info"
|
||||||
|
pattern = USER_PATTERN + r"/info"
|
||||||
|
example = "https://bsky.app/profile/HANDLE/info"
|
||||||
|
|
||||||
|
def items(self):
|
||||||
|
self._metadata_user = True
|
||||||
|
self.api._did_from_actor(self.user)
|
||||||
|
return iter(((Message.Directory, self._user),))
|
||||||
|
|
||||||
|
|
||||||
class BlueskyAvatarExtractor(BlueskyExtractor):
|
class BlueskyAvatarExtractor(BlueskyExtractor):
|
||||||
subcategory = "avatar"
|
subcategory = "avatar"
|
||||||
filename_fmt = "avatar_{post_id}.{extension}"
|
filename_fmt = "avatar_{post_id}.{extension}"
|
||||||
|
|||||||
@@ -42,6 +42,11 @@ __tests__ = (
|
|||||||
),
|
),
|
||||||
},
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"#url" : "https://bsky.app/profile/bsky.app/info",
|
||||||
|
"#class" : bluesky.BlueskyInfoExtractor,
|
||||||
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
"#url" : "https://bsky.app/profile/bsky.app/avatar",
|
"#url" : "https://bsky.app/profile/bsky.app/avatar",
|
||||||
"#category": ("", "bluesky", "avatar"),
|
"#category": ("", "bluesky", "avatar"),
|
||||||
|
|||||||
Reference in New Issue
Block a user