Как сделать бота на Python для чтения закрепленных сообщений в Telegram
Пришел сюда потому что не смог найти информацию о том, как "спарсить" закрепленное сообщение в Telegram. Пробовал библиотеки telebot и telegram, telegram.ext, но не нашел информацию о них.
Вопрос: Как это сделать?
Ответы (1 шт):
Автор решения: zrx
→ Ссылка
- Установка библиотеки
python-telegram-bot
pip install python-telegram-bot --upgrade - Создание стандартного бота:
from telegram import Update, ForceReply
from telegram.ext import Updater, CommandHandler, MessageHandler, Filters, CallbackContext
updater = Updater(token='TOKEN', use_context=True)
dispatcher = updater.dispatcher
def start(update, context):
context.bot.send_message(chat_id=update.effective_chat.id, text="Hello, World!")
start_handler = CommandHandler('start', start)
dispatcher.add_handler(start_handler)
updater.start_polling()
- Добавляем
echo-функцию, для того, чтобы протестировать получение объекта чата:
def echo(update: Update, context: CallbackContext) -> None:
print(context.bot.get_chat(ID).pinned_message)
dispatcher.add_handler(MessageHandler(Filters.text & ~Filters.command, echo))
- Вставляем
IDчата, в котором есть бот и из которого нам нужно получить закреплённое сообщение. - Запускаем бота и пишем ему любое сообщение.
- Готово. В консоли бот запринтит объект закреплённого сообщения.
Библиотека: https://github.com/python-telegram-bot/python-telegram-bot
Документация к библиотеке: https://python-telegram-bot.readthedocs.io/en/latest/
Документация Telegram API: https://core.telegram.org/bots/