簡體   English   中英

使用 Telethon 時運行循環

[英]Running a loop while using telethon

我正在制作一個需要循環檢查頻道的電報頻道管理控制腳本。 我還想要一些消息處理程序檢查消息。 這是我的代碼的一部分:

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_until_complete(main()),消息處理程序將無法工作,但 main 運行良好。 如果我使用client.run_until_disconnected() 並使用另一個線程在另一個循環中運行main,它會停留在get_admin_log。 現在我該怎么辦? (當特定消息到達時,我嘗試在消息處理程序中運行 main(我在運行它時手動發送它)。它運行 main 但不再處理消息)

嘗試 async while,如果可能,嘗試使用另一個代碼(不要使用 while),因為它是無窮無盡的。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM