python - (discord.py) 冒充另一个用户
问题描述
我一直在不和谐服务器上玩 Dadbot,他有一个命令,基本上冒充另一个用户并说一些令人尴尬的事情。我想在我自己的 python 中的不和谐机器人上尝试这个,但我现在知道如何并且我找不到任何关于它的教程。我对 python 和 dicord api 也没有什么经验,只能做基本的命令。我听说它使用 webhook,但我不知道那是什么或如何使用它。如果有人能教我如何或至少给出一个正确教程的链接,我将不胜感激!
解决方案
通过使用用户名或其他用户创建 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()
推荐阅读
- javascript - Vee-validate 仅验证某些字段
- java - MediaPlayer Android Studio 让我的应用运行缓慢
- talend - TALEND : 如何记录组件级运行时信息
- javascript - 通过 ID angular 6 获取对象:
- full-text-search - 带有特殊字符和“单词开头”的 MariaDB 全文搜索
- python - Python3 列表推导未按预期工作
- javascript - 使用不同的键创建对象
- python - 在特定字符串之后返回文本中的数字
- javascript - 正则表达式超过 10 个数字
- javascript - 如何使用 javascript 创建 HTML 文件