Как удалять все сообщения от определённого юзера через vkbottle?

Для удаления всех сообщений от определённого пользователя через vkbottle, вам потребуется использовать метод messages.delete() с параметром "delete_for_all" установленным в значение "1".

Вот пример кода для удаления всех сообщений от определённого пользователя через vkbottle:

import logging
from vkbottle import Bot, Message

bot = Bot()

@bot.on.message()
async def handle_messages(message: Message):
    user_id = <id_пользователя>  # ID пользователя, чьи сообщения нужно удалить
    if message.from_id == user_id:
        try:
            await message.api.messages.delete(message_ids=[message.id], delete_for_all=1)
        except Exception as e:
            logging.error(f"Ошибка при удалении сообщений: {e}")
    # Добавьте другую логику обработки сообщений, если нужно

bot.run_polling()

В этом примере мы создаем бота с использованием библиотеки vkbottle и регистрируем обработчик сообщений с помощью декоратора @bot.on.message(). В обработчике мы проверяем, отправитель сообщения (message.from_id) и сравниваем его с ID пользователя, чьи сообщения мы хотим удалить. Если отправитель совпадает, мы вызываем метод messages.delete() с параметром delete_for_all=1 и передаем в качестве аргумента список ID сообщений, которые нужно удалить.

Обратите внимание, что вам потребуется получить токен доступа для вашего сообщества VK и добавить его в код, чтобы ваш бот мог работать.

Кроме того, помните, что VK имеет ограничения на удаление сообщений, поэтому вы не сможете удалить все сообщения сразу, если их количество превышает лимит. В этом случае вам нужно будет делать вызовы метода messages.delete() пакетно, например, по 100 сообщений за раз.