Почему мой бот Discord дважды выводит разные командыPython

Программы на Python
Ответить
Anonymous
 Почему мой бот Discord дважды выводит разные команды

Сообщение Anonymous »

У меня возникли некоторые проблемы с ботом: когда я набираю !a help, он показывает один и тот же вывод дважды, а не один раз. Код:
Вывод снимка экрана Python
Бот дважды запускает одни и те же команды
Ссылка: Main.py:

Код: Выделить всё

# main.py
import os
import asyncio
import dotenv
import discord
from discord.ext import commands
import db

dotenv.load_dotenv("bot.env")

intents = discord.Intents.default()
intents.members = True
intents.message_content = True
intents.guilds = True

b = commands.Bot(command_prefix="!a ", intents=intents)

async def load_cogs():
for filename in os.listdir("./cogs"):
if filename.endswith(".py"):
await b.load_extension(f"cogs.{filename[:-3]}")
print("✅ All cogs loaded")

@b.event
async def on_ready():
print(f"✅ Bot online as {b.user}")
# Check for duplicate commands
all_commands = list(b.commands)
command_names = [cmd.name for cmd in all_commands]
duplicates = [name for name in command_names if command_names.count(name) > 1]

if duplicates:
print(f"🚨 DUPLICATE COMMANDS FOUND: {duplicates}")
else:
print(f"✅ No duplicate commands. Total: {len(all_commands)}")

# List all commands
for cmd in all_commands:
print(f"  - {cmd.name} (cog: {cmd.cog_name if cmd.cog else 'None'})")

async def main():
db.init_db()
await load_cogs()
await b.start(os.getenv("DISCORD_TOKEN"))

if __name__ == "__main__":
asyncio.run(main())
Ссылка: Moderation.py:
https://gist.github.com/JuanGomezBot/6d ... a24484f6f1 (код слишком длинный, чтобы его можно было показать здесь)
Я пытался использоватьchatgpt, но у них ужасная память, и deepseek думает очень долгое время не приводило к решению

Подробнее здесь: https://stackoverflow.com/questions/798 ... ands-twice
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»