已安装python-telegram-bot仍遇telegram及telegram.ext导入解析错误
解决python-telegram-bot导入错误的方案
原因分析
你遇到的问题是因为python-telegram-bot的新版本(v20+)做了架构重构,旧版代码的导入路径和核心类已被变更,直接安装最新版会和你的代码不兼容。
两种解决方式
方式1:适配最新版(推荐)
将代码调整为v20+版本的写法,修改导入和初始化逻辑:
import logging from telegram import Update, ParseMode from telegram.ext import Application, CommandHandler, MessageHandler, filters # 替换原Updater的初始化方式 application = Application.builder().token("你的机器人Token").build() # 添加命令和消息处理器(逻辑和旧版一致) application.add_handler(CommandHandler("start", 你的启动命令函数)) application.add_handler(MessageHandler(filters.TEXT & ~filters.COMMAND, 你的消息处理函数)) # 启动机器人 application.run_polling()
方式2:安装旧版兼容代码
如果不想修改代码,可指定安装v13.x版本(旧版最后一个稳定版):
pip install python-telegram-bot==13.7
⚠️ 注意:旧版本已停止维护,存在安全风险,不建议长期使用。
额外排查点
- 执行
pip show python-telegram-bot确认安装的版本,确保和代码写法匹配 - 检查是否使用了虚拟环境,确认pip安装的包在当前运行的Python环境中
内容的提问来源于stack exchange,提问作者kris
相关产品推荐
相关产品推荐

