Загрузка...

Блок и удаление всех переписок с ботами в тг

Тема в разделе Python создана пользователем Локет 20 мар 2025. 165 просмотров

  1. Локет
    Локет Автор темы 20 мар 2025 4347 6 ноя 2020
    Тестил на (Python 3.11.9, telethon1.39.0)
    По идее любой python > 3 подойдет.
    Закрепленные боты останутся видимыми, но с пустыми чатами.
    Боты заблокались все, у пары ботов не очистилась история(при перезапуске доудалились все). У личных ботов аккаунта не удаляется история, они просто блочатся.

    12 строчка:
    device_model - любое название устройства отсюда https://www.kimovil.com/ru/all-smartphone-brands
    app_version - ласт версию отсюда https://telegram-for-desktop.ru.uptodown.com/windows/versions

    Python

    import asyncio
    from telethon import TelegramClient, functions, types, errors

    async def main():
    # Ввод данных для авторизации
    api_id = input("Введите API ID: ")
    api_hash = input("Введите API Hash: ")
    phone = input("Введите номер телефона: ")

    # Создаем клиент
    client = TelegramClient('telethon_session', api_id, api_hash, device_model="Xiaomi Redmi K80 Pro", app_version="5.12.3", lang_code="ru")

    # Функция для запроса пароля 2FA
    def get_2fa_password():
    return input("Введите пароль 2FA (если не требуется, нажмите Enter): ")

    # Авторизация
    await client.start(phone=phone, password=get_2fa_password)

    print("Авторизация успешна. Начинаем обработку...")

    # Перебираем все диалоги
    async for dialog in client.iter_dialogs():
    # Проверяем, является ли диалог приватным чатом с ботом
    if isinstance(dialog.entity, types.User) and dialog.entity.bot:
    bot = dialog.entity
    try:
    # Блокируем бота
    await client(functions.contacts.BlockRequest(id=bot))
    print(f"Бот {bot.first_name} (ID: {bot.id}) заблокирован")

    # Удаляем всю переписку с ботом
    await client.delete_dialog(bot)
    print(f"Переписка с {bot.first_name} удалена")
    except errors.RPCError as e:
    print(f"Ошибка при обработке бота {bot.id}: {e}")

    await asyncio.sleep(1)

    print("Обработка завершена!")

    # Запуск основной функции
    asyncio.run(main())
     
    20 мар 2025 Изменено
  2. 893
    Ритик
    это конечно хорошо, но мне интересно, кому это будет полезно, без рофла?
     
  3. KeNowLedge
    KeNowLedge 20 мар 2025 1348 5 янв 2018
    так пропиши device_model и system_version в конструкторе какие-нибудь
     
  4. Димагвоздь
    Димагвоздь 20 мар 2025 ты меня запомнишь сученька 1090 9 янв 2025
    так а нахуй мне чтобы сессия дохла то
     
    1. Локет Автор темы
  5. детектив
    детектив 21 мар 2025 elvis has left the building 260 19 ноя 2019
    полезно. блокирует на юзерском аккаунте всех именно тг ботов без личных чатов?
     
    1. Локет Автор темы
Загрузка...
Top