Compare commits

...
2 Commits
Author SHA1 Message Date
YoursFunny 6d06e28598 fix gif media 2024-03-23 15:01:17 +08:00
YoursFunny 4083b09093 add gif support 2024-03-23 14:54:22 +08:00
+24 -5
View File
@@ -4,8 +4,10 @@ from aiohttp import ClientSession
from telegram import (
InlineQueryResultPhoto,
InlineQueryResultVideo,
InlineQueryResultMpeg4Gif,
InputMediaPhoto,
InputMediaVideo
InputMediaVideo,
InputMediaAnimation
)
from common import x_url_regex, x_media_regex, x_tco_regex, logger
@@ -48,6 +50,10 @@ class TweetMedia:
return f"{twimg_url}{self._uri}?format=jpg&name=4096x4096"
case "video":
return self._url
case "gif":
return self._url
case _:
return self._url
@property
def thumb(self) -> str:
@@ -56,6 +62,10 @@ class TweetMedia:
return f"{twimg_url}{self._uri}?format=jpg&name=thumb"
case "video":
return self._thumb
case "gif":
return self._thumb
case _:
return self._thumb
@property
def type(self) -> str:
@@ -186,8 +196,6 @@ class TGTweet(Tweet):
id=str(i),
photo_url=tweet_media.url,
thumbnail_url=tweet_media.thumb,
title=self.url,
description=self.text,
caption=self.message_text if not i else None
)
elif tweet_media.type == "video":
@@ -196,8 +204,13 @@ class TGTweet(Tweet):
video_url=tweet_media.url,
mime_type="video/mp4",
thumbnail_url=tweet_media.thumb,
title=self.url,
description=self.text,
caption=self.message_text if not i else None
)
elif tweet_media.type == "gif":
yield InlineQueryResultMpeg4Gif(
id=str(i),
mpeg4_url=tweet_media.url,
thumbnail_url=tweet_media.thumb,
caption=self.message_text if not i else None
)
@@ -216,3 +229,9 @@ class TGTweet(Tweet):
has_spoiler=self.sensitive,
thumbnail=tweet_media.thumb
)
elif tweet_media.type == "gif":
yield InputMediaAnimation(
media=tweet_media.url,
has_spoiler=self.sensitive,
thumbnail=tweet_media.thumb
)