haniaman
@haniaman
Учусь на программиста

Как получать содержимое новых сообщений в telegram канале?

Здравствуйте, мне надо с телеграмм канала ссылка удалена модератором реализовать, чтобы при появлении нового сообщения, скрипт брал текст сообщения и доставал от туда только сам промокод. Я не понимаю, как это реализовать. Пробовал через Telethon, не получилось даже entity канала узнать, просто выдает ошибку, что не удалось найти такой, хотя я его получал через client.get_entity("@battle_legendary") и с -100 и без, ничего.

Вроде задача очень простая, просто возьми последнее сообщение и скопируй его, все, но я не понимаю.

Пробовал вынести через client.iter_messages('-1001834701763', limit=1), но он меня тоже нафиг послал.

При этом после каждого подключения через API, меня выкидывает со всех устройств и приходится каждый раз входить в телеграмм аккаунт заново.
  • Вопрос задан
  • 371 просмотр
Решения вопроса 1
haniaman
@haniaman Автор вопроса
Учусь на программиста
В общем, решил проблему сменив библиотеку на Pyrogram
Сессии сохраняются, подключается, с аккаунтов не выкидывает, по поводу ID канана мозги не компосирует.

from pyrogram import Client
from pyrogram import types, filters
from pyrogram.handlers import MessageHandler

CHANNEL_ID = -1001834701763

app = Client("my_account")

@app.on_message(filters=filters.channel)
async def my_function(client, message):
    if message.chat.id == CHANNEL_ID:
        t = message.text
        print(t)

my_handler = MessageHandler(my_function)
app.add_handler(my_handler)

app.run()
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
Dr_Elvis
@Dr_Elvis Куратор тега Python
В гугле забанен
Возможно связано с моим вопросом https://qna.habr.com/q/1106974
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы