如何使用aiohttp创建reddit discord机器人

如何使用aiohttp创建reddit discord机器人,discord,discord.py,discord.py-rewrite,Discord,Discord.py,Discord.py Rewrite,最近,我用python制作了一个discord机器人,我想添加reddit命令,正如我在Dank Memer、MEE6和其他从reddit发送图像帖子的机器人上看到的那样。我在网上找到了一些代码(我对discord.py很陌生),并找到了如何使用aiohttp实现这一点 async def meme(ctx): embed = discord.Embed(title="Post from r/memes.", description=None, color=0xff0000)

最近,我用python制作了一个discord机器人,我想添加reddit命令,正如我在Dank Memer、MEE6和其他从reddit发送图像帖子的机器人上看到的那样。我在网上找到了一些代码(我对discord.py很陌生),并找到了如何使用aiohttp实现这一点

async def meme(ctx):
embed = discord.Embed(title="Post from r/memes.", description=None, color=0xff0000)
async with aiohttp.ClientSession() as cs:
    async with cs.get('https://www.reddit.com/r/memes/new.json?sort=hot') as r:
        res = await r.json()
        embed.set_image(url=res['data']['children'] [random.randint(0, 25)]['data']['url'])
        await ctx.send(embed=embed, content=None)
唯一的问题是,我还没有弄清楚如何添加帖子的url,以便用户可以访问它。

您应该使用,praw是一个reddit API包装器,使用起来容易得多,可以使用cmd中的命令
pip install-U praw
来安装

您需要一个RedditAPI客户机ID和客户机机密,方法是转到,然后按“您是开发人员吗?”?“创建应用…”按钮

使标题、描述和重定向uri成为您想要的内容,因为它没有被使用。完成后,获取您的客户端ID,该ID可在应用程序名称和客户端密码下找到

现在进入代码并在代码开头添加
import praw
。 然后制作一个名为reddit的新变量

reddit=praw.reddit(客户端id-='CLIENTID',客户端机密='CLIENTSECRET',用户代理='WhateverYouWant'


很抱歉,如果您感到困惑,因为我没有很好地解释。

谢谢,我会检查它!我现在有一个新问题。当bot返回
submission.url
并单击它时,我将转到图像url,而不是原始的reddit帖子。