我怎么只能从PRAW获取图片

How do I only get a picture from PRAW

我正在尝试将 PRAW 用于 discord.py 命令。但是我不希望在执行命令时播放视频,所以有没有一种方法可以让我只能在收到 post?

时获取图片?

这是我的资料:

@commands.command()
    async def aww(self, ctx):
      subreddit = reddit.subreddit("aww")

      allsubs = []

      top = subreddit.top(limit = 50)

      for submission in top: 
        allsubs.append(submission)
      
      randomsub = random.choice(allsubs)

      name = randomsub.title 
      url = randomsub.url 
      
      em = discord.Embed(
        title = name, 
        color = discord.Color.blurple()
      )
      em.set_image(url = url)

      await ctx.send(embed = em)

任何帮助将不胜感激,谢谢!

因为PRAW api只给你一个url (str) 而没有任何关于URL的信息,我建议添加一些条件来确保[=18] =] 是照片而不是视频。

例如

randomsub = random.choice(allsubs)
extension = randomsub.url[len(randomsub.url) - 3 :].lower()
while "jpg" not in extension or "png" not in extension:
    randomsub = random.choice(allsubs)
    extension = randomsub.url[len(randomsub.url) - 3 :].lower()

然后从那里开始。显然有更优雅的方法来解决这个问题,但基本点是相同的。