如何实现命令发送时随机切换Embed缩略图GIF?
问题解决步骤
问题1:第一个链接的GIF无法显示
你用的第一个链接是Tenor的网页地址,不是GIF文件的直接资源链接。Discord Embed的缩略图只能识别直接的媒体文件URL(比如以.gif结尾的链接),无法解析网页页面。
解决方法:把网页链接换成GIF的直接资源链接——在Tenor网页上右键点击目标GIF,选择「复制图片地址」,得到的就是符合要求的链接。
问题2:随机选择只重复显示同一个GIF
你的list定义有语法错误:第二个元素把三个GIF链接直接拼接在一起,没有用逗号分隔,导致整个列表实际只有2个元素:
- 第一个:无效的网页链接
- 第二个:拼接后的无效字符串(Embed只能识别其中第一个有效的子链接,所以每次选到这个元素时都显示同一个GIF)
修正后的代码示例
import random # 每个元素都是独立的有效GIF直接链接 gif_links = [ "https://media.tenor.com/23504270.gif", # 替换为第一个GIF的直接资源链接 "https://media.tenor.com/pw9ZsUdsEYgAAAAj/capoo-blue-cat.gif", "https://media.tenor.com/f8hUa09f_SoAAAAj/fortnite-fortnite-dance.gif", "https://media.tenor.com/f8hUa09f_SoAAAAj/fortnite-fortnite-dance.gif" ] # 随机选择一个链接作为缩略图地址 thumbnail_url = random.choice(gif_links) # 后续将该地址设置到Embed的缩略图中 # 示例:embed.set_thumbnail(url=thumbnail_url)
内容的提问来源于stack exchange,提问作者French fry with a fade
相关产品推荐
相关产品推荐

