在电报机器人(python-telegraph-bot)中导入错误

ix0qys7i  于 2023-02-28  发布在  Python
关注(0)|答案(1)|浏览(152)

我有一个用python-telegraph-bot编写的telegraph bot,运行良好,但几周后,当我启动脚本时,它似乎找不到一些库和模块。
举个例子,“更新”在我的代码中被广泛使用,它工作得很好。但是现在python找不到它了。
这是我的一些进口货。

from telegram import  Update, ForceReply, InlineQueryResultArticle, InputTextMessageContent, ReplyKeyboardRemove, InlineKeyboardButton, InlineKeyboardMarkup, Update, User, ReplyKeyboardMarkup, Contact, Message, KeyboardButton

这就是错误。

async def start(update: Update, context: ContextTypes.DEFAULT_TYPE) -> None:
NameError: name 'Update' is not defined

有人知道解决办法吗?
我试着转移到一个新的环境,用--pre或--upgrade开关重新安装python-telegraph-bot,清除python缓存并重新加载vs code ssh窗口。

gupuwyp2

gupuwyp21#

我不认为有一种好的方法可以将环境转换为生产环境(如果我说错了请纠正我),但是,您可以使用安装在您的环境中的完全相同的软件包构建一个新环境:

pip freeze > requirements.txt

这会将您在开发环境中使用的每个包保存在一个文件中,然后您可以在docker文件中使用该文件来构建与开发bot时完全相同的依赖项,使用:

pip install -r requirements.txt

相关问题