我正在制作一个电报频道管理控制脚本,需要在循环中检查频道。我还需要一些消息处理程序来检查消息。以下是我代码的一部分:
async def main():
while True:
.... (some code)
log=await client.get_admin_log(await client.get_entity(chat),limit=1)
.... (some code here)
@client.on(telethon.events.NewMessage)
async def message_handler(m):
.... (handle messages)
client.start()
如果我使用client.loop.run_直到_完成(main()),消息处理程序将无法工作,但main会完全运行。如果我使用client.run_直到_disconnected()并使用另一个线程在另一个循环中运行main,它会阻塞get_admin_log。现在我该怎么办? (当specefic消息到达时,我尝试在消息处理程序中运行main(当我运行它时,我手动发送它) 。它运行main,但不再处理消息)
尝试异步,如果可能的话,尝试使用另一个代码(不要使用while),因为它是无止境的
相关问题 更多 >
编程相关推荐