首页 > 解决方案 > (discord.py) 冒充另一个用户

问题描述

我一直在不和谐服务器上玩 Dadbot,他有一个命令,基本上冒充另一个用户并说一些令人尴尬的事情。我想在我自己的 python 中的不和谐机器人上尝试这个,但我现在知道如何并且我找不到任何关于它的教程。我对 python 和 dicord api 也没有什么经验,只能做基本的命令。我听说它使用 webhook,但我不知道那是什么或如何使用它。如果有人能教我如何或至少给出一个正确教程的链接,我将不胜感激!

标签: pythondiscord.py

解决方案


通过使用用户名或其他用户创建 webhook,您使用命令“充当”作为,将创建一个包含这些详细信息的 Discord webhook,然后删除 webhook,但保留消息。

Webhook 是一种通信类型,可用于访问和自动化您的消息,以将数据更新发送到您的 Discord 文本通道。

在这种情况下,当从命令发送消息时,用户显示为机器人,但其他一切都来自用户。NQN bot 使用这种精确的方法

@client.command()
async def impersonate(ctx, member: discord.Member, *, message=None):

        if message == None:
                await ctx.send(f'Who do you want to impersonate?')
                return

        webhook = await ctx.channel.create_webhook(name=member.name)
        await webhook.send(
            str(message), username=member.name, avatar_url=member.avatar_url)

        webhooks = await ctx.channel.webhooks()
        for webhook in webhooks:
                await webhook.delete()


推荐阅读