each_line
, но есть line
.sped
при использовании команды будет строкой, а не числом.time.sleep
в асинхронном коде. В данном случае - весь Ваш бот будет зависать на указанное время: https://discordpy.readthedocs.io/en/stable/faq.htm...@bot.listen()
async def on_ready():
await bot.tree.sync()
await bot.change_presence(activity=discord.Activity(type=discord.ActivityType.competing))
Shard ID None is requesting privileged intents that have not been explicitly enabled in the developer portal. It is recommended to go to https://discord.com/developers/applications/ and explicitly enable the privileged intents within your application's page. If this is not possible, then consider disabling the privileged intents instead.
"Осколок" с ID None запрашивает привилегированные намерения (intents), которые не были включены на портале разработчика. Рекомендуется пройти на https://discord.com/developers/applications/ и включить привилегированные намерения на странице вашего приложения. Если это невозможно, вместо этого подумайте над отключением привилегированных намерений.
guild.unban
в качестве user
принимает любой объект основанный на абстрактном классе abc.Snowflake
abc.Snowflake
в свою очередь является классом с одним единственным атрибутом - ID
Object
, таким образом:member = discord.Object(row["user_id"]) # row["user_id"] должен быть типа int
await guild.unban(member)
async def setprefix(self, ctx, *, prefixes=""): # prefixes
custom_prefixes[ctx.guild.id] = default_prefixes # default_prefixes
# default_prefixes != prefixes
await ctx.send("Prefixes set!")
The setup and teardown functions in extensions must now be coroutines.
ext.commands.Bot.load_extension()
must now be awaited.ext.commands.Bot.unload_extension()
must now be awaited.ext.commands.Bot.reload_extension()
must now be awaited.ext.commands.Bot.add_cog()
must now be awaited.ext.commands.Bot.remove_cog()
must now be awaited.
bot.load_extension(name)
→ await bot.load_extension(name)
Участник добавивший реакцию. Доступно только если event_type является REACTION_ADD, и реакция добавлена в контексте сервера
reports.json
, либо сменить режим открытия файла.r
Стандартный режим -'r'
(открыть для чтения текста, синоним'rt'
). Режимы'w+'
и'w+b'
открывают и очищают файл. Режимы'r+'
и'r+b'
открывают файл без очистки.
Блокирующий ("привязанный" к CPU) код не должен вызываться напрямую. Например, если функция выполняет интенсивные для CPU вычисления в течении 1 секунды, все одновременные задачи asyncio (Tasks) и операции ввода-вывода будут отложены на 1 секунду.
Можно использовать "исполнитель" (executor) для запуска задачи в отдельном потоке или даже в отдельном процессе для предотвращения блокирования потока ОС вместе с циклом событий. Смотрите документацию метода loop.run_in_executor() для большей информации.
ALLOWED_CHANNEL = 2338229588067772743
def allowed_channel_check():
def predicate(ctx):
return ctx.channel.id == ALLOWED_CHANNEL
return commands.check(predicate)
@client.command()
@allowed_channel_check()
async def reg (ctx, *, nick):