如何收集电报消息流

时间:2019-03-02 16:19:42

标签: telegram telethon

是否有用于获取电报消息流的库或工具?通过流,我的意思是听客户的聊天,群组和频道,并收集所有消息。类似于Twitter Streaming API。我研究了Telethon库,可以收集聊天,群组和频道的历史数据,但是找不到任何方法来收听和获取该库中的新传入消息!

1 个答案:

答案 0 :(得分:0)

Telethon确实允许您这样做。您需要使用events。事件类型多种多样,对于您的情况,您需要使用NewMessage事件。您可以在此链接here中了解有关该事件的更多信息。这是一个片段,该片段可以完全按照您的期望从链接中获取。

from telethon import TelegramClient, events

client = TelegramClient('name', api_id, api_hash)

@client.on(events.NewMessage)
async def my_event_handler(event):
    if 'hello' in event.raw_text:
        await event.reply('hi!')

client.start()
client.run_until_disconnected()