|
|
|
@ -37,7 +37,9 @@ class MastodonExtractor(Extractor):
|
|
|
|
|
def items(self):
|
|
|
|
|
yield Message.Version, 1
|
|
|
|
|
for status in self.statuses():
|
|
|
|
|
attachments = self.prepare(status)
|
|
|
|
|
attachments = status["media_attachments"]
|
|
|
|
|
if attachments:
|
|
|
|
|
self.prepare(status)
|
|
|
|
|
yield Message.Directory, status
|
|
|
|
|
for media in attachments:
|
|
|
|
|
status["media"] = media
|
|
|
|
@ -50,13 +52,11 @@ class MastodonExtractor(Extractor):
|
|
|
|
|
|
|
|
|
|
def prepare(self, status):
|
|
|
|
|
"""Prepare a status object"""
|
|
|
|
|
del status["media_attachments"]
|
|
|
|
|
status["instance"] = self.instance
|
|
|
|
|
status["tags"] = [tag["name"] for tag in status["tags"]]
|
|
|
|
|
status["date"] = text.parse_datetime(
|
|
|
|
|
status["created_at"][:19], "%Y-%m-%dT%H:%M:%S")
|
|
|
|
|
attachments = status["media_attachments"]
|
|
|
|
|
del status["media_attachments"]
|
|
|
|
|
return attachments
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class MastodonUserExtractor(MastodonExtractor):
|
|
|
|
|