В телеграм боте на python telebot появляется ошибка при вводе данных. Если кто знает подскажите в чём причина ошибки?

Есть бот погоды. Пользователю предлагается ввести город, далее появляется меню: на сегодня, на завтра, неделя. В итоге бот отдаёт в двух переменных толко выбранный отрезок времени: сегодня, завира, неделя а выбранный город не выводит. Если кто знает в чем причина подскажите...Ниже приведу отрезок кода:

bot = telebot.TeleBot(TOKEN)

# Клавиатура с выбором города
city_keyboard = telebot.types.ReplyKeyboardMarkup(row_width=2)
city_keyboard.add('Москва', 'Санкт-Петербург', 'Новосибирск', 'Екатеринбург', 'Казань', 'Нижний Новгород')

# Клавиатура с выбором дня недели
day_keyboard = telebot.types.ReplyKeyboardMarkup(row_width=2)
day_keyboard.add('Сегодня', 'Завтра')


# Обработчик команды /start
@bot.message_handler(commands=['start'])
def start(message):
    bot.send_message(message.chat.id, 'Привет! Я бот погоды. Выбери город:', reply_markup=city_keyboard)


# Обработчик выбора города
@bot.message_handler(
    func=lambda message: message.text in ['Москва', 'Санкт-Петербург', 'Новосибирск', 'Екатеринбург', 'Казань',
                                          'Нижний Новгород'])
def day(message):
    bot.send_message(message.chat.id, 'Выбери день недели:', reply_markup=day_keyboard)
    bot.register_next_step_handler(message, weather)


# Обработчик выбора дня недели
def weather(message):
    city = message.text
    if message.text == 'Сегодня':
        diy = 'сегодня'
    elif message.text == 'Завтра':
        diy = 'завтра'
    url = f'https://meteolabs.org/погода_{city.lower()}/{diy}/'
    print(city)
    print(day)
    data = requests.get(url).text
    block = BeautifulSoup(data, 'lxml')
    haeds = block.find('h1', class_='h1')
    name = (haeds.text.strip())
    print(name)
    # bot.reply_to(message, name)
    zoan = block.find('p', class_='icon-calendar heading_date')
    # print(zoan.text.strip())
    gloos = (zoan.text.strip())
    seoss = name
    seoss += '  ' + gloos
    bot.send_message(message.chat.id, seoss)
    bot.send_message(mess.chat.id, seoss)
    # bot.send_message(mess.chat.id, name)
    # bot.send_message(mess.chat.id, gloos)
    params = block.find('div', class_='wthSBlockWrapper').find_all('div', class_='wthSBlock wthSBlock_list')
    # print(params[0].text.strip())
    # print(params[1].text.strip())
    for i in params:
        # bot.send_message(mess.chat.id, i.text.strip())
        dann = i.text.strip()
        bot.send_message(message.chat.id, dann)
        bot.send_message(message.chat.id, dann)


# Запуск бота
bot.polling(none_stop=True)

Ответы (0 шт):