Updater'对象没有属性'add_handler

问题描述 投票:0回答:1

输入此代码时

def main() -> None:
    update_queue = queue.Queue()
    bot_token = "token"

    bot = Bot(token=bot_token)
    updater = Updater(
        bot=bot,
        update_queue=update_queue
    )

    conv_handler = ConversationHandler(
        entry_points=[CommandHandler('book', book_appointment)],
        states={
            NAME: [MessageHandler(filters.TEXT & (~filters.COMMAND), book)],
            PHONE: [MessageHandler(filters.TEXT & (~filters.COMMAND), phone)],
            EMAIL: [MessageHandler(filters.TEXT & (~filters.COMMAND), email)],
            ISSUE: [MessageHandler(filters.TEXT & (~filters.COMMAND), issue)],
            TIME: [MessageHandler(filters.TEXT & (~filters.COMMAND), time)],
        },
        fallbacks=[CommandHandler('start', start)],
    )

    updater.add_handler(conv_handler)
    updater.add_handler(CommandHandler("info", info))

    updater.start_polling()

    updater.idle()

if __name__ == '__main__':
    main()`

发出错误 - Updater'对象没有属性'add_handler

所有必需的库均已正确导入:

from telegram import Update, Inline Keyboard Button, InlineKeyboardMarkup from telegram.text import Updater, Command Handler, CallbackContext, CallbackQueryHandler, ConversationHandler, MessageHandler, filters import queue from telegram import Bot
,下载了最新版本的
python-telegram-bot

如何解决这个问题?

python telegram telegram-bot python-telegram-bot
1个回答
1
投票

add_handler
telegram.Update
的属性(不是
telegram.text.Updater
)。对于 v20 库,请使用此 wiki 来熟悉新的更新程序(位于
telegram.ext.Updater

© www.soinside.com 2019 - 2024. All rights reserved.