A
A
artchis2021-09-24 23:08:12
Python
artchis, 2021-09-24 23:08:12

Why doesn't the code continue to work?

The bottom line is, when I start the bot, everything starts, when I click on the "Numerator" button, the code works like clockwork, how I click on the back button "No response comes", when I click on the Denominator, there is no answer either why?

I do everything according to textbooks and the Internet, in programming I don’t really rummage

CODE:

from aiogram import Bot, types
from aiogram.dispatcher import Dispatcher
from aiogram.utils import executor
 
bot = Bot(token='Тут мой токен')

dp = Dispatcher(bot)


# Обработчик событий /start

@dp.message_handler(commands=['start',])
async def start(message: types.Message):
  if message.text == ('/start'):
    keyboard = types.ReplyKeyboardMarkup(resize_keyboard=True)
    buttons = ["Числитель", "Знаменатель"]
    keyboard.add(*buttons)
    await message.answer("Вас приветсвует БОТ Расписание ВГПГК для группы ИС-213\nВыбери какая неделя идёт: Числитель или Знаменатель?", reply_markup=keyboard)

# Обработчик событий кнопки назад

#@dp.message_handler(content_types=['text'])
#async def back(message: types.Message):
#	if message.text == ('Назад'):
#		keyboard.add(*buttons)
#		await message.answer("Вас приветсвует БОТ Расписание ВГПГК для группы ИС-213\nВыбери какая неделя идёт: Числитель или Знаменатель?", reply_markup=keyboard)

# Обработчки событий Числитель день недели

@dp.message_handler(content_types=['text'])
async def chis(message: types.Message):
  if message.text == ('Числитель'):
    keyboard = types.ReplyKeyboardMarkup(resize_keyboard=True)
    dny = ["Понедельник", "Вторник", "Среда", "Четверг", "Пятница", "Суббота", "Назад"]
    keyboard.add(*dny)
    await bot.send_message(message.from_user.id, 'Выбери день недели', reply_markup=keyboard)

  if message.text == ('Понедельник'):
    keyboard = types.ReplyKeyboardMarkup(resize_keyboard=True)
    back = ["Назад"]
    keyboard.add(*back)
    await bot.send_message(message.from_user.id, 'Понедельник:\n1. Математика - Хз | 8:00 - 9:35\n2. Информатика - Грезина | 9:45 - 11:20\n3. ОБЖ - Авилов | 12:55 - 13:30', reply_markup=keyboard)

  if message.text == ('Вторник'):
    keyboard = types.ReplyKeyboardMarkup(resize_keyboard=True)
    back = ["Назад"]
    keyboard.add(*back)
    await bot.send_message(message.from_user.id, 'Вторник:\n1. Математика - Хз | 8:00 - 9:35\n2. Информатика - Грезина | 9:45 - 11:20\n3. ОБЖ - Авилов | 12:55 - 13:30', reply_markup=keyboard)

  if message.text == ('Среда'):
    keyboard = types.ReplyKeyboardMarkup(resize_keyboard=True)
    back = ["Назад"]
    keyboard.add(*back)
    await bot.send_message(message.from_user.id, 'Среда:\n1. Математика - Хз | 8:00 - 9:35\n2. Информатика - Грезина | 9:45 - 11:20\n3. ОБЖ - Авилов | 12:55 - 13:30', reply_markup=keyboard)

  if message.text == ('Четверг'):
    keyboard = types.ReplyKeyboardMarkup(resize_keyboard=True)
    back = ["Назад"]
    keyboard.add(*back)
    await bot.send_message(message.from_user.id, 'Четверг:\n1. Математика - Хз | 8:00 - 9:35\n2. Информатика - Грезина | 9:45 - 11:20\n3. ОБЖ - Авилов | 12:55 - 13:30', reply_markup=keyboard)

  if message.text == ('Пятница'):
    keyboard = types.ReplyKeyboardMarkup(resize_keyboard=True)
    back = ["Назад"]
    keyboard.add(*back)
    await bot.send_message(message.from_user.id, 'Пятница:\n1. Математика - Хз | 8:00 - 9:35\n2. Информатика - Грезина | 9:45 - 11:20\n3. ОБЖ - Авилов | 12:55 - 13:30', reply_markup=keyboard)

  if message.text == ('Суббота'):
    keyboard = types.ReplyKeyboardMarkup(resize_keyboard=True)
    back = ["Назад"]
    keyboard.add(*back)
    await bot.send_message(message.from_user.id, 'Суббота:\n1. Математика - Хз | 8:00 - 9:35\n2. Информатика - Грезина | 9:45 - 11:20\n3. ОБЖ - Авилов | 12:55 - 13:30', reply_markup=keyboard)

# Знаменатель

@dp.message_handler(content_types=['text'])
async def znam(message: types.Message):
  if message.text == ('Знаменатель'):
    keyboard = types.ReplyKeyboardMarkup(resize_keyboard=True)
    dny = ["Понедельник", "Вторник", "Среда", "Четверг", "Пятница", "Суббота", "Назад"]
    keyboard.add(*dny)
    await bot.send_message(message.from_user.id, 'Выбери день недели', reply_markup=keyboard)

  if message.text == ('Понедельник'):
    keyboard = types.ReplyKeyboardMarkup(resize_keyboard=True)
    back = ["Назад"]
    keyboard.add(*back)
    await bot.send_message(message.from_user.id, 'Понедельник:\n1. Математика - Хз | 8:00 - 9:35\n2. Информатика - Грезина | 9:45 - 11:20\n3. ОБЖ - Авилов | 12:55 - 13:30', reply_markup=keyboard)

  if message.text == ('Вторник'):
    keyboard = types.ReplyKeyboardMarkup(resize_keyboard=True)
    back = ["Назад"]
    keyboard.add(*back)
    await bot.send_message(message.from_user.id, 'Вторник:\n1. Математика - Хз | 8:00 - 9:35\n2. Информатика - Грезина | 9:45 - 11:20\n3. ОБЖ - Авилов | 12:55 - 13:30', reply_markup=keyboard)

  if message.text == ('Среда'):
    keyboard = types.ReplyKeyboardMarkup(resize_keyboard=True)
    back = ["Назад"]
    keyboard.add(*back)
    await bot.send_message(message.from_user.id, 'Среда:\n1. Математика - Хз | 8:00 - 9:35\n2. Информатика - Грезина | 9:45 - 11:20\n3. ОБЖ - Авилов | 12:55 - 13:30', reply_markup=keyboard)

  if message.text == ('Четверг'):
    keyboard = types.ReplyKeyboardMarkup(resize_keyboard=True)
    back = ["Назад"]
    keyboard.add(*back)
    await bot.send_message(message.from_user.id, 'Четверг:\n1. Математика - Хз | 8:00 - 9:35\n2. Информатика - Грезина | 9:45 - 11:20\n3. ОБЖ - Авилов | 12:55 - 13:30', reply_markup=keyboard)

  if message.text == ('Пятница'):
    keyboard = types.ReplyKeyboardMarkup(resize_keyboard=True)
    back = ["Назад"]
    keyboard.add(*back)
    await bot.send_message(message.from_user.id, 'Пятница:\n1. Математика - Хз | 8:00 - 9:35\n2. Информатика - Грезина | 9:45 - 11:20\n3. ОБЖ - Авилов | 12:55 - 13:30', reply_markup=keyboard)

  if message.text == ('Суббота'):
    keyboard = types.ReplyKeyboardMarkup(resize_keyboard=True)
    back = ["Назад"]
    keyboard.add(*back)
    await bot.send_message(message.from_user.id, 'Суббота:\n1. Математика - Хз | 8:00 - 9:35\n2. Информатика - Грезина | 9:45 - 11:20\n3. ОБЖ - Авилов | 12:55 - 13:30', reply_markup=keyboard)

@dp.message_handler(content_types=['text'])
async def back_or(message: types.Message):
  if message.text == ('Назад'):
    keyboard = types.ReplyKeyboardMarkup(resize_keyboard=True)
    back_or = ["Числитель", "Знаменатель"]
    keyboard.add(*back_or)
    await bot.send_message(message.from_user.id, 'Выбери день недели', reply_markup=keyboard)


if __name__ == '__main__':
    executor.start_polling(dp)

Answer the question

In order to leave comments, you need to log in

1 answer(s)
O
Old_TyT, 2021-09-25
@artchis

Duck you have not written a handler for the text "Numerator"

from aiogram import Bot, types
from aiogram.dispatcher import Dispatcher
from aiogram.utils import executor
 
bot = Bot(token='Тут токен')

dp = Dispatcher(bot)

@dp.message_handler(commands=['start'])
async def start(message: types.Message):
    keyboard = types.ReplyKeyboardMarkup(resize_keyboard=True)
    buttons = ["Числитель", "Знаменатель"]
    keyboard.add(*buttons)
    await message.answer("Вас приветсвует БОТ Расписание ВГПГК для группы ИС-213\nВыбери какая неделя идёт: Числитель или Знаменатель?", reply_markup=keyboard)


@dp.message_handler()
async def back_or(message: types.Message):
    text = ':\n1. Математика - Хз | 8:00 - 9:35\n2. Информатика - Грезина | 9:45 - 11:20\n3. ОБЖ - Авилов | 12:55 - 13:30'
    dny = ["Понедельник", "Вторник", "Среда", "Четверг", "Пятница", "Суббота", "Назад"]
    back = ["Назад"]
    keyboard = types.ReplyKeyboardMarkup(resize_keyboard=True)
    keyboard.add(*dny)

    if message.text == ('Назад'):
        await start(message)
        return()
    
    if message.text == ('Знаменатель'):
        await bot.send_message(message.from_user.id, 'Выбери день недели', reply_markup=keyboard)
        return()

    if message.text == ('Числитель'):
        await bot.send_message(message.from_user.id, 'Тут какой то код должен быть')
        return()

    for dn in dny:
        if message.text == dn:
            await bot.send_message(message.from_user.id, str(dn) + text, reply_markup=keyboard)
            return()

if __name__ == '__main__':
    executor.start_polling(dp)

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question