You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Pyrogram调用get_messages触发OverflowError问题求助

问题:调用get_messages时触发OverflowError: int too big to convert错误

执行以下代码时:

await bot.get_messages(CHAT_ID, MESSAGE_ID)

出现OverflowError: int too big to convert错误,且CHAT_ID和MESSAGE_ID均为int类型。

解决方法

  • 检查数值范围:Python的int支持大数值,但部分Telegram客户端库的底层依赖可能对32位整数有兼容限制。确保CHAT_ID和MESSAGE_ID未超出Telegram API的实际可用范围(Chat ID通常不超过9e18,Message ID一般在1e10以内)。
  • 改用字符串传入ID:多数Telegram SDK(如Pyrogram、Telethon)支持接收字符串类型的ID,可绕过整数转换限制。修改代码如下:
    await bot.get_messages(str(CHAT_ID), str(MESSAGE_ID))
    
  • 更新依赖库版本:旧版本的Telegram客户端库可能存在大整数处理的bug,升级到最新稳定版:
    # 若使用Pyrogram
    pip install --upgrade pyrogram
    # 若使用Telethon
    pip install --upgrade telethon
    
  • 验证ID有效性:确认CHAT_ID格式正确(如超级群组ID带负号、频道ID格式合规),且MESSAGE_ID确实存在于目标对话中,无效ID也可能引发异常。

预期结果

执行await app.get_messages(CHAT_ID, MESSAGE_ID)应返回types.Message类型对象。

内容的提问来源于stack exchange,提问作者NaZZaR4iK

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.14 04:34:52