From 622802e3a70ae3881b9828ee33e020263fe8a469 Mon Sep 17 00:00:00 2001 From: fllesser Date: Tue, 28 Apr 2026 21:25:12 +0800 Subject: [PATCH] feat(twitter): add original_url property to MediaElement and update image handling --- src/nonebot_plugin_parser/parsers/twitter.py | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/nonebot_plugin_parser/parsers/twitter.py b/src/nonebot_plugin_parser/parsers/twitter.py index b0b6b04e..2d866c2a 100644 --- a/src/nonebot_plugin_parser/parsers/twitter.py +++ b/src/nonebot_plugin_parser/parsers/twitter.py @@ -22,6 +22,10 @@ class MediaElement(Struct): def duration(self) -> float | None: return self.duration_millis / 1000 if self.duration_millis else None + @property + def original_url(self) -> str: + return self.url + ":orig" + class Article(Struct): image: str | None = None @@ -90,9 +94,10 @@ def _collect_result(self, data: VxTwitterResponse) -> ParseResult: ) result.contents.append(video) elif media.type == "image": - result.contents.append(self.create_image(media.url)) + result.contents.append(self.create_image(media.original_url)) - result.repost = self._collect_result(data.qrt) if data.qrt else None + if data.qrt: + result.repost = self._collect_result(data.qrt) return result