我在 python 中用 telebot 制作了一个电报机器人,但我得到了一个错误,我有文本按钮,尽管我使用了 InlineKeyboardButton,为什么?

I make a telegram bot with telebot in python, but I got an error that I have textbutton, although I have use InlineKeyboardButton, why?

thats my code in image

这就是我的代码:

keyboard = types.InlineKeyboardMarkup(row_width=2) # вывод кнопок в 1 колонку
    btn_1 = types.InlineKeyboardButton(bookmarks_categories[0], callback_data=0)
    btn_2 = types.InlineKeyboardButton(bookmarks_categories[1], callback_data=1)
    btn_3 = types.InlineKeyboardButton(bookmarks_categories[2], callback_data=2)
    keyboard.add(btn_1,btn_2,btn_3,btn_4,btn_5,btn_6,btn_7,btn_8,btn_9,btn_10,btn_11,btn_12,btn_13,btn_14,btn_15,btn_16,btn_17)
    bot.send_message(message.chat.id, 'Вывод inline-клавиатуры', reply_markup=keyboard)

那是我的错误:

2021-08-28 00:11:29,741 (__init__.py:652 MainThread) ERROR - TeleBot: "A request to the Telegram API was unsuccessful. Error code: 400. Description: Bad Request: can't parse inline keyboard button: Text buttons are unallowed in the inline keyboard"

我该如何解决这个问题?

你可以查看这个解决方案,我已经通过多个键盘完成了一个项目,例如inline_keyboards和Reply_keyboards,我使用了电报库

from telegram import (InlineKeyboardButton, InlineKeyboardMarkup)

对于内联键盘按钮,您可以先通过以下方式识别键盘按钮:

buttons = [
    [
        InlineKeyboardButton(text=bookmarks_categories[0],callback_data=0),
        InlineKeyboardButton(text=bookmarks_categories[1],callback_data=1),
    ],
]

然后像这样识别您的键盘:

keyboard = InlineKeyboardMarkup(buttons)