class MBot:
def __init__(self, wayfu: object, list_anime: object) -> object:
self.list_anime = list_anime
self.bot = telebot.TeleBot('МОЙ ТОКЕН')
self.wayfu = wayfu
print(self.wayfu)
self.flag = True
@self.bot.message_handler(commands=['start'])
def inline_key(message):
self.mainmenu = types.InlineKeyboardMarkup()
self.key1 = types.InlineKeyboardButton(text='ТОП ТЯНОК', callback_data='key1')
self.key2 = types.InlineKeyboardButton(text='ТОП АНИМЕ', callback_data='key2')
self.key3 = types.InlineKeyboardButton(text='?', callback_data='key3')
self.key4 = types.InlineKeyboardButton(text='САЙТ -->', url='https://habrahabr.ru')
self.mainmenu.add(self.key1, self.key2, self.key3, self.key4)
self.bot.send_message(message.chat.id, 'Это главное меню!', reply_markup=self.mainmenu)
@self.bot.message_handler(content_types='text')
def message_reply(message):
try:
self.namber = message.text
if 59 > int(self.namber) > 0:
self.nambers = str(self.namber)
self.namber = int(self.namber) * (-1)
self.bot.send_message(message.from_user.id, self.wayfu[self.namber])
self.bot.send_photo(message.from_user.id,
'https://www.entoin.com/simages/waifu' + self.nambers + '.jpg')
# print('https://www.entoin.com/simages/waifu' + self.nambers + '.jpg')
else:
self.bot.send_message(message.from_user.id, "ВЫ ОШИБЛИСЬ СЕМПАЙ!")
self.bot.send_photo(message.from_user.id,
'https://thecouch.world/wp-content/uploads/2019/01/JotaroFrenchBread_Easy-Resize.com_.jpg')
except ValueError:
self.bot.send_message(message.from_user.id, "ВЫ ОШИБЛИСЬ СЕМПАЙ!")
self.bot.send_photo(message.from_user.id,
'https://thecouch.world/wp-content/uploads/2019/01/JotaroFrenchBread_Easy-Resize.com_.jpg')
def message_replys(message):
# self.bot.register_next_step_handler(call.message, message_reply)
self.namber_1 = message.text
if 11 > int(self.namber_1) > 0:
# self.nambers_1 = str(self.namber_1)
self.namber_1 = int(self.namber_1) * (-1)
self.bot.send_message(message.from_user.id, self.list_anime[self.namber_1])
@self.bot.callback_query_handler(func=lambda call: True)
def callback_worker(call):
if call.data == "key1":
# self.flag = True
self.bot.register_next_step_handler(call.message, message_reply)
self.bot.send_photo(call.from_user.id,
'https://i.pinimg.com/originals/e4/ea/2c/e4ea2c9b19a62f3590a55b9b86b6dfe4.jpg')
self.bot.send_message(call.message.chat.id,
"Введите номер от 1 до 58 и узнайте на каком месте какая тянка")
if call.data == "key2":
# self.flag = False
self.bot.register_next_step_handler(call.message, message_replys)
self.bot.send_message(call.message.chat.id, "Введите номер от 1 до 10 и узнайте аниме на этом месте")
# if self.flag:
# message_reply()
# return False
self.bot.polling()
if __name__ == '__main__':
x = Req()
Я вызываю функцию message_replys при нажатии второй кнопки. Но она после одного сообщения переходит на message_reply то есть другую функцию, как исправить? А кстати, если кому интересно я могу скинуть сылку на бота! и сылку на githab, а и данные я парсю с сайта)