Проблеми с ботом телеграм на Python

Есть телеграм бот который говорит погоду, я решил сделать так что бы можно было смотреть не только погоду но и что-то другое. Решил сделать через телеграм клавиатуру но появилась проблема, в коде где только погода захватывала сообщения только код погоды, но теперь захватует сообщение и код клавиатуры. И из-за этого вместо того что бы пользователь сам символ свой город оно захватывает текст кнопки клавиатуры.

API удалил специально. Вот код:

#Импорт модулей
import logging
import telebot
import pyowm
import requests
from telebot import types
#Создание переменной(почти безсмисленно)
num = 1
num = int(num)


#Откритие файла номера лога для читаний
handle = open("test.txt", 'r')
logn = handle.read()
#Создание и написание логов
logging.basicConfig(filename="logs\sample" + logn + ".log" , level=logging.INFO)
log = logging.getLogger("ex")
#Вивод в лог обозначения видов ошибок
logging.debug("This is a debug message")
logging.info("Informational message")
logging.error("An error has happened!")
#Откритие файла номера лога для редактиривания
handle = open("test.txt", 'w')
#Изменения номера лога в файле лога на +1
opent = int(logn) + int(num)
opent = str(opent)
handle.write(opent)
handle.close()
#Код бота
while True:
    #Создание переменной
    test = "0"
    #Привязка бота к уникальному аунтификатор(api-code)
    bot = telebot.TeleBot('API')
    #Стартовая команда для начала роботи с ботом
    @bot.message_handler(commands=['start'])
    #Вивод сообщения для того что би узнать город
    def start_message(message):
        #bot.send_message(message.chat.id, 'Привет. Напиши город что би узнать погоду в нем.')
        markup = types.ReplyKeyboardMarkup(resize_keyboard=True)
        item1 = types.KeyboardButton("Погода")
        item2 = types.KeyboardButton("Что-то другое")

        markup.add(item1, item2)

        bot.send_message(message.chat.id, "Вибирете нужний вариант.".format(message.from_user, bot.get_me()),
            parse_mode='html', reply_markup=markup)
    @bot.message_handler(content_types=['text'])
    def lalala(message):
        if message.chat.type == 'private':
            if message.text == 'Погода':
                 #Захват текста которий пишут боту
                start_message(message)
    def start_message(message):
        bot.send_message(message.chat.id, 'Привет. Напиши город что би узнать погоду в нем.')
        send_text(message)
    @bot.message_handler(content_types=['text'])
    def send_text(message):
        test = message.text.lower()
        #Функция вивода погоди и температури
        try:
           #Привязка к уникальному аунтификатору(api-code)
           owm = pyowm.OWM('API', language='ru')
           #Захват города которий пишет человек
           test = message.text.lower()
           #Получения даних погоди города
           observation = owm.weather_at_place(test)
           #Получения погоди и т.д
           w = observation.get_weather()
           #Получение температури  в цельсиях
           temp = w.get_temperature('celsius')['temp']
           #Получение статуса погоди
           status = w.get_detailed_status()
           #Красивий вивод текста
           if test == 'киев':
               city = 'Киеве'
               bot.send_message(message.chat.id, "В  " + city + ":  " +  status)
           #Вивод статуса погоди
           else: bot.send_message(message.chat.id, "В  " + test + ":  " +  status)
           #Вивод температури в цельсиях
           bot.send_message(message.chat.id, "Температура" + ":  " + str(temp)+ "  градусов по цельсию")
        #Фукция защити от крашей из-за ввода неправильного города
        except pyowm.exceptions.api_response_error.NotFoundError:
           bot.send_message(message.chat.id, 'Город не найден :(')
    bot.polling()

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