@Showlxx

Почему бот не отвечает на ошибку а крашится?

from pyowm import OWM
import telebot
# Импортируем бота тг
# А вот и сам бот, с токеном, взятый у BotFather.
owm = OWM("TOKEN")
mgr = owm.weather_manager()
from pyowm.utils.config import get_default_config
config_dict = get_default_config()
config_dict['language'] = 'ru'  # Смена языка
bot = telebot.TeleBot('TOKEN')
@bot.message_handler(content_types=['text']) # это хендлер, т.е. при получении указанного типа контента, выполнит функцию ниже
# хз для чего сделано вна2ре, но я так понял, что для ответа на любые сообщения
def send_echo(message):
	try:
		observation = mgr.weather_at_place(message.text)
		w = observation.weather
		temp= w.temperature('celsius')["temp"]

		answer = "В городе " + message.text + " сейчас - " + w.detailed_status + "\n"
		answer += "Температура сейчас в районе " + str(temp) + "\n\n"

		if temp < 10:
			answer += "Рекомендую одеться потеплее!"

		elif temp<20:
				answer += 'Отличная погода, сударь.'
		else:
				answer += "Не холодно, доставай майки :) "

		bot.send_message(message.chat.id, answer)
	except NotFoundError(APIResponseError):
		bot.send_message(message.chat.id, 'Город не найден :(')

bot.polling(none_stop=True)
  • Вопрос задан
  • 72 просмотра
Решения вопроса 1
@vascodogama
Попробуй:

def send_echo(message):
  try:
    observation = mgr.weather_at_place(message.text)
    w = observation.weather
    temp= w.temperature('celsius')["temp"]

    answer = "В городе " + message.text + " сейчас - " + w.detailed_status + "\n"
    answer += "Температура сейчас в районе " + str(temp) + "\n\n"

    if temp < 10:
      answer += "Рекомендую одеться потеплее!"

    elif temp<20:
        answer += 'Отличная погода, сударь.'
    else:
        answer += "Не холодно, доставай майки :) "

    bot.send_message(message.chat.id, answer)
  except:
    bot.send_message(message.chat.id, 'Город не найден :(')
    print('Город не найден')


Запринтил ?
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@bacon
Прошу, не избивайте, меня Хауди учил :с
перестать заниматься ерундой, взять учебник и начать с основ python и гуглить не забывай, на все вопросы новичков уже сто раз дан ответ.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
26 февр. 2021, в 08:12
1000 руб./за проект
26 февр. 2021, в 05:09
3000 руб./за проект
26 февр. 2021, в 04:16
3000 руб./за проект