python - Meme 命令 discord.py

标签 python discord discord.py

我的 discord.py 机器人中有 2 个模因命令。我正在使用 redditeasy api,因为有人告诉我它更快 asyncpraw 和 praw(这是真的)。​​

我的问题:有没有办法随机化 subreddits?我的意思是,该 api 应该从给定的 subreddit 列表中随机选择一个 subreddit,然后从该随机选择的 subreddit 中选择一个随机帖子。

我试过:

random_sub_list = random.choice['Subreddits here']

然后在 subreddit 中传递该变量但不起作用。

这是我的代码:

#memes


@bot.command(aliases = ['m'])
async def meme(ctx):
  post = redditeasy.AsyncSubreddit(subreddit = 'dankmemes',                              client_id='id here',
                                client_secret = 'secret',
                                user_agent = 'memes')

  postoutput = await post.get_post()

  em2 = discord.Embed(title = f'{postoutput.title}')
  url = postoutput.content
  
  em2.set_image(url = url)
  await ctx.send(embed = em2)


#narutomemes


@bot.command(aliases = ['Nmeme', 'NMEME', 'nm', 'NM', 'Nm'])
async def nmeme(ctx):
  post = redditeasy.AsyncSubreddit(subreddit = 'narutomemes',                              client_id='id here',
                                client_secret = 'secret',
                                user_agent = 'memes')

  postoutput = await post.get_post()

  em3 = discord.Embed(title = f'{postoutput.title}')
  url = postoutput.content
  
  em3.set_image(url = url)
  await ctx.send(embed = em3)

最佳答案

我试过这样的。

def get_post_from_random_subreddit():
    subreddit_name = random.choice(["dankmemes", "narutomemes"])
    subreddit = redditeasy.AsyncSubreddit(
        subreddit=subreddit_name,
        client_secret="secret",
        user_agent="memes"
    )
    post = asyncio.run(subreddit.get_post())
    return f"{post.title} from {post.subreddit_name}"

但如果没有 discord bot,它也能完美运行。这些帖子随机来自 2 个 subreddits。我还使用了您的客户端密码。

分享这个 secret 时要小心。有些人可能会滥用它!

关于python - Meme 命令 discord.py,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67938687/

相关文章:

python - 使用Python将JSON转换为CSV

python - :doy:sod format 年的 Pandas date_parser 函数

python-3.x - 为什么我无法通过 Discord.py 从函数发送消息?

node.js - 即使我的终端关闭,如何保持我的不和谐机器人在线

javascript - 使用 discord.js 在第一个 channel 发送消息

python - Cogs - 在父目录中查找 (Discord.py)

python - Discord - 仅从 python 应用程序向不和谐 channel 发送消息(单向通信)

python - Z3 Int 未定义错误

python - pandas:将空数据帧写入HDF文件

python - Discord Bot 未激活