如何在向Telegram服务器发送请求间设置10秒超时以避免被封禁?
解决方案
要避免Telegram账号因发送频率过高被封禁,你需要把批量发送的逻辑改成逐个发送消息,且每发送一条后等待10秒,而非一次性提交所有请求。
修改后的代码如下:
import asyncio # 定义要发送的消息列表 messages = [ SendMessageRequest('me', 'Hello'), SendMessageRequest('me', ', '), SendMessageRequest('me', 'World'), SendMessageRequest('me', '.') ] # 逐个发送并间隔10秒 for msg in messages: await client([msg], ordered=True) # 最后一条消息无需等待 if msg != messages[-1]: await asyncio.sleep(10)
关键说明
- 将原批量请求拆分为单个请求发送,每次仅传递一条
SendMessageRequest给client - 用
asyncio.sleep(10)控制发送间隔,避免触发Telegram的频率限制 - 保留
ordered=True确保消息按设定顺序发送
内容的提问来源于stack exchange,提问作者root
相关产品推荐
相关产品推荐

