我对方法ReplyKeyboardButton有问题。
我尝试从航标图中连接模块,我尝试从远程机器人获取类型,我尝试仅使用一个模块(远程机器人)
import telebot
#from aiogram.types import ReplyKeyboardRemove, \
#ReplyKeyboardMarkup, KeyboardButton, \
#InlineKeyboardMarkup, InlineKeyboardButton
token = 'mytoken'
bot = telebot.TeleBot(token)
#keyboard1 = telebot.types.ReplyKeyboardMarkup()
#keyboard1.row('Категории', 'Купить приватку', 'Что дает приватка?')
button_qiwi = ReplyKeyboardButton('QIWI')
button_sber = ReplyKeyboardButton('Сбербанк')
button_categories = ReplyKeyboardButton('Категории')
button_privat = ReplyKeyboardButton('Купить приватку')
button_whatis = ReplyKeyboardButton('Что дает приватка?')
button_cancel = ReplyKeyboardButton('Назад')
markup_start = ReplyKeyboardMarkup().row(
button_categories, button_privat, button_whatis
)
markup_pay = ReplyKeyboardMarkup().row(
button_qiwi, button_sber, button_cancel
)
@bot.message_handler(commands=['start'])
def start_message(message):
bot.send_message(message.chat.id, 'Привет! Чтобы ты взаимодействовал с ботом, тебе нужно зайти в кнопки.', reply_markup=markup_start)
@bot.message_handler(content_types=['sticker'])
def sticker_id(message):
print(message)
@bot.message_handler(content_types=['text'])
def send_text(message):
if message.text.lower() == 'категории':
bot.send_message(message.chat.id, '123')
elif message.text.lower() == 'купить приватку':
bot.send_sticker(message.chat.id, 'CAADAgADZgkAAnlc4gmfCor5YbYYRAI')
bot.send_message(message.chat.id, 'Хорошо! Приватка стоит 450 рублей. Оплатить можно через QIWI и через Сбербанк. Как удобней?', reply_markup = markup_pay)
if message.text.lower() == 'Сбербанк':
bot.send_text(message.chat.id, '123')
if message.text.lower() == 'QIWI':
bot.send_text(message.chat.id, '123')
elif message.text.lower() == 'Назад':
bot.send_sticker(message.chat.id,'',reply_markup = markup_start)
else:
bot.send_message(message.chat.id, 'Ой! Что-то пошло не так((')
elif message.text.lower() == 'что дает приватка?':
bot.send_message(message.chat.id, 'Доступ ко всем категориям, Уникальный контент')
else:
bot.send_message(message.chat.id, 'Неизвестная команда')
bot.polling()
这是输出:
回溯(最近通话最近): 在第11行的文件“ C:/Users/yaros/Desktop/bot/bot.py” button_qiwi = ReplyKeyboardButton('QIWI') NameError:名称“ ReplyKeyboardButton”未定义
以退出代码1完成的过程。
答案 0 :(得分:0)
好吧,您需要像markup = types.ReplyKeyboardRemove()
,而您只有markup_pay = ReplyKeyboardMarkup().row
。我的意思是您忘记了有关types.
的信息,而您需要from telebot import types