Pyrogram: использование в filters списка
Нужно сделать, чтобы телеграм бот парсил информацию с разных телеграм каналов. Для этого я хочу использовать списки. Как это реализовать? Сделайте скидку на новичка, не пинайте в документацию- я еще только на пути к ее изучению. И берёт, почему-то только второй источник?
donors_ids = [-1002013306534, -1001965389659]
user_bot.add_handler(MessageHandler(new_post, filters.chat(chats=donors_id)
Ответы (1 шт):
Автор решения: FoxyHopper Dev
→ Ссылка
Если ты используешь библиотеку python-telegram-bot, то решение можно найти с использованием списков:
from telegram.ext import Updater, MessageHandler, Filters
# Создаем экземпляр Updater и передаем токен бота
updater = Updater(token='YOUR_BOT_TOKEN', use_context=True)
dispatcher = updater.dispatcher
# Список с ID каналов, которые ты хочешь парсить
donors_ids = [-1002013306534, -1001965389659]
# Функция, которая будет вызываться при получении нового поста
def new_post(update, context):
# Твой код обработки поста
pass
# Создаем хэндлер с фильтром по списку ID каналов
donors_filter = Filters.chat(chat_id=donors_ids)
dispatcher.add_handler(MessageHandler(donors_filter, new_post))
# Запускаем бота
updater.start_polling()
updater.idle()