0
0 комментариев
Ошибка возникает только в том случае, если сервис не имеет нужного города в своём списке. Мне нужно решение, которое будет оповещать об ошибке в боте для пользователя, и при этом, чтобы работа бота не прерывалась.
import telebot
import pyowm
 bot = telebot.TeleBot("Token")
owm = pyowm.OWM("Token", language='ru')
 @bot.message_handler(content_types=['text'])
def send_currentweather(message):
    observation = owm.weather_at_place( message.text )
    w = observation.get_weather()
    temp = w.get_temperature('celsius')["temp"]
     answer = "В " + message.text + " сейчас " + w.get_detailed_status() + "\n"
    answer += "Температура: " + str(temp) + "℃" + "\n\n"
     if temp < 10:
        answer += "На улице достаточно прохладно"
    elif temp < 15:
        answer += "Немного прохладно на улице"
    elif temp < 20:
        answer += "Отличная погода для прогулки"
    elif temp < 25:
        answer += "Достаточно тепло"
    elif temp < 30:
        answer += "На улице жарковато"
    elif temp < 35:
        answer += "Сейчас жарко"
    elif temp < 40:
        answer += "Выходить на улицу не желательно. Очень жарко."
    elif temp < 50:
        answer += "Лучше не выходить из дому без важной причины. Аномальная жара."
    elif temp < 0:
        answer += " Сейчас очень холодно, оденься потеплее"
      bot.send_message(message.chat.id, answer)
 if __name__ == '__main__':
      bot.polling(none_stop = True, interval = 0)

Asked question
Добавить комментарий