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

Telethon客户端授权异常:输入验证码后无响应且登录失败

Telegram Telethon授权无响应问题排查及解决

可能原因及对应解决方法

1. 异步调用未正确使用(最常见原因)

你的代码直接调用client.start()和client.run_until_disconnected(),但这两个方法都是异步协程,必须在异步上下文里用await等待执行完成,否则授权流程会被阻塞,导致验证码输入后无响应。

修正后的代码:

from telethon import TelegramClient, events
import asyncio

api_id = MY_API_ID
api_hash = "MY_API_HASH"
client = TelegramClient('first_session', api_id, api_hash)

@client.on(events.NewMessage(outgoing=True, pattern=None))
async def greeting(event):
    chat = await event.get_chat()
    await client.send_message(chat, "Hello, World!")

async def main():
    await client.start()
    await client.run_until_disconnected()

if __name__ == "__main__":
    asyncio.run(main())

2. 控制台输入环境异常

部分IDE内置终端可能存在输入捕获问题,导致验证码无法被程序正确接收。建议切换到系统原生终端(Windows命令提示符、macOS/Linux终端)运行代码。

3. 账号需额外验证

如果你的账号开启了两步验证,或者Telegram检测到异常登录(新设备/新IP),会要求输入额外验证信息(比如两步验证密码),但原代码未处理这种交互,导致流程卡住。运行代码时注意控制台是否有密码输入提示,按要求输入即可。

4. API信息错误或网络问题

  • 检查api_id和api_hash是否与Telegram开发者平台申请的完全一致,错误的API信息会导致授权静默失败。
  • 确保网络能正常访问Telegram服务器,网络波动或代理配置异常会导致验证码提交超时,触发“登录尝试未完成”通知。

内容的提问来源于stack exchange,提问作者Даниил Чиндин

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.01 10:20:43