discord.py massban 命令不起作用?

时间:2021-04-15 15:01:47

标签: python discord.py

所以我制作了这个简单的脚本来在测试服务器上测试它,代码没有给出错误/日志但它不起作用,确切地说没有禁止任何人。有任何想法吗? (仅用于测试和教育目的。)

from discord.ext import commands
import random
import colorama
from discord import Permissions
from colorama import Fore, Style
import asyncio

token = "token"


client = commands.Bot(command_prefix="y!")


@client.event
async def on_ready():
  print('''
  
  READY
  ''')
  await client.change_presence(activity=discord.Game(name="test"))


@client.command()
async def bonk(ctx):
  for user in ctx.guild.members:
    try:
      await user.ban()
    except:
        pass

client.run(token, bot=True)```

1 个答案:

答案 0 :(得分:0)

看起来好像缺少 Intent,因为您说您没有导入它们。没有 Intents,你无法抓住公会中的所有成员。

确保在 Discord Developer Portal 中为您的应用开启所有必要的功能。

要将它们实现到您的代码中,您可以使用以下内容:

intents = discord.Intents.all() # Imports all the Intents
client = commands.Bot(command_prefix="YourPrefix", intents=intents)

您还可以阅读docs了解更多信息。

您的完整代码是:

Imports shortened

token = "token"

intents = discord.Intents.all()
client = commands.Bot(command_prefix="y!", intents=intents)


@client.event
async def on_ready():
  print('''READY''')
  await client.change_presence(activity=discord.Game(name="test"))


@client.command()
async def bonk(ctx):
  for user in ctx.guild.members:
    try:
      await user.ban()
    except:
        pass

client.run(token, bot=True)