Skip to main content
 首页 » 编程设计

python之python 中的监听器之Telegram

2025年05月04日23zengkefu

您好,我正在使用 telegram api telethon。这里我想用python代码连续监听群消息。

我能够从群组中读取消息,但每次我都需要运行代码。有什么方法可以实现我的代码应该同步收听消息。

下面是给我分组消息的代码片段。需要在里面添加监听代码。

client = TelegramClient('session_read', api_id, api_hash) 
client.start() 
 
dialog_count = 50 
dialogs = client.get_dialogs(dialog_count) 
for i, entity in enumerate(dialogs): 
 
    if entity.name == 'GroupName': 
     print('{}'.format(entity.message.message)) 

请您参考如下方法:

Telethon 具有记录在案的事件处理程序 here .对于基本的新消息处理程序,第一个示例应该执行以下操作:

from telethon import TelegramClient, events 
 
client = TelegramClient('session_read', api_id, api_hash) 
 
@client.on(events.NewMessage) 
async def my_event_handler(event): 
    print('{}'.format(event)) 
 
client.start() 
client.run_until_disconnected() 

如果要检查它是否在特定组中,可以在 events.NewMessage 上使用 chats 参数:

@client.on(events.NewMessage(chats=("GroupName", "Group2"))) 
async def my_event_handler(event): 
    print(event) 

还有很多其他过滤选项,所以我建议查看之前链接的文档。