• Вопросик по бот-погода Телеграм на Python?

    byxo-cyze
    @byxo-cyze
    Спасаю мир.
    Достаточно добавить except ...

    import pyowm
    import telebot
    
    # от блокировок
    # from telebot import apihelper
    # apihelper.proxy = {'https':'socks5://127.0.0.1:9050'}
    
    owm=pyowm.OWM('df1....51', language = 'ru')
    
    bot = telebot.TeleBot('106...ilQ')
    
    @bot.message_handler(content_types=['text'])
    def send_echo(message):
      try:
        observation = owm.weather_at_place(message.text)
        w = observation.get_weather()
        temp=w.get_temperature('celsius')['temp']
    
        answer = f"В городе {message.text} сейчас {w.get_detailed_status()} \n"
        answer += f"Температура в районе {round(temp)} градусов\n\n"
    
        if temp<10:
          answer += 'Очень холодно, оденься потеплее))'
        elif temp<17:
          answer += 'Прохладно, лучше оденься:)'
        else:
          answer += 'Не холодно, хоть в трусах иди:)'
    
        bot.send_message(message.chat.id, answer)
      except pyowm.exceptions.api_response_error.NotFoundError:
          bot.send_message(message.chat.id, 'Город не найден :(')
          
    
    bot.polling(none_stop = True)
    Ответ написан
    1 комментарий