python - 如果我说某个关键字,如何让机器人踢某人
问题描述
因此,如果我说例如“abracadraba”,我希望机器人踢某个成员。我知道我想踢的玩家,例如 'example#1234' 该机器人拥有所有必要的权限。
这是现在的代码:
import discord
import time
from discord.ext import commands
client = discord.Client()
@client.event
async def on_ready():
print("Botu e gata")
@client.event
async def on_message(message):
if message.content.startswith("ba"):
await member.kick(userName = "FluXon#5183",reason=None)
if "matei" in message.content:
await message.channel.send("Suge carasu")
if "Matei" in message.content:
await message.channel.send("El e ceo nostru")
time.sleep(2)
await message.channel.send("Unul dintre cei mai respectati cetateni ai acestui server")
time.sleep(2)
await message.channel.send("El se ocupa de chestii ca voi sa nu trebuiasca sa va ocupati")
time.sleep(2)
await message.channel.send("Asa ca respecta ti-l")
time.sleep(2)
await message.channel.send("MATEI CEO")
await message.channel.send("MATEI CEO")
await message.channel.send("MATEI CEO")
client.run(token)
解决方案
下面是一些可以实现您想要的代码,请确保替换123456789
为您想要被踢的用户的 ID。您可以按照本教程找到用户 ID。
@client.event
async def on_message(message):
if "abracadraba" in message.content:
member = await message.guild.fetch_member(123456789)
await member.kick()
笔记:
任何人都可以通过说出这个词来踢该成员,而不仅仅是你。如果您想将其限制为仅限您自己,您可以检查message.author
等于您。discord.Forbidden
如果机器人没有踢人的权限,这个函数也会引发 a 。
相关文档:
推荐阅读
- c# - 解析多个键控服务
- ansible - 具有终止保护的 Ansible 删除堆栈
- bash - 如何修复“错误:buffer_manager.cc(488)] [.DisplayCompositor]GL 错误:GL_INVALID_OPERATION:glBufferData:”
- javascript - 组件上的不同@click事件 - VueJS
- reactjs - Rmwc 对话框组件构建失败?
- r - Shiny 应用程序中 plotly 和 ggplot2 的布局问题
- bash - 如何转义句点然后在终端中包含通配符?
- checksum - 您没有通过 bbb 中的校验和安全检查
- vb.net - Label reference not set to an instance
- javascript - 为什么被调用函数中的参数必须具有其他“名称”,而不是与调用它的参数相同?