Windows 10, python 3.74
Привет всем. Я создал код бота для отправки сообщения пользователю ТГ чата с температурой в выбранном городе.
Идея такая: пользователь пишет "1" -> бот спрашивает какой город -> обрабатывает инфу с модулем pyowm -> отвечает пользователю в чат.
сам код:
При выполнении возникает ошибка, сообщающая, что город "1" не найден.
Суть такая: и первое сообщение от пользователя ( '1' ) и второе ( указание города ) являются "message.text" (который и обрабатывает модуль pyowm). Но обработка всегда приходится на сообщение '1', а не на второе сообщение с городом.
Не знаю, как это исправить. Помогите пожалуйста.
Привет всем. Я создал код бота для отправки сообщения пользователю ТГ чата с температурой в выбранном городе.
Идея такая: пользователь пишет "1" -> бот спрашивает какой город -> обрабатывает инфу с модулем pyowm -> отвечает пользователю в чат.
сам код:
Python:
import telebot
import config
import pyowm
bot = telebot.TeleBot(config.TOKEN )
owm = pyowm.OWM('30c4998aa320f683f2c2b00fbc2b35b4', language = 'ru')
@bot.message_handler(content_types=["text"])
def weather_place(message):
if message =='1':
bot.send_message(message.from_user.id, 'Назови свой город')
observation = owm.weather_at_place(message.text)
w = observation.get_weather()
temp_place = w.get_temperature('celsius')['temp']
bot.send_message(message.from_user.id, 'Средняя температура в городе '+ message.text + ' сегодня составляет ' + str(temp_place) + ' ℃ ')
bot.polling(none_stop = True)
При выполнении возникает ошибка, сообщающая, что город "1" не найден.
Суть такая: и первое сообщение от пользователя ( '1' ) и второе ( указание города ) являются "message.text" (который и обрабатывает модуль pyowm). Но обработка всегда приходится на сообщение '1', а не на второе сообщение с городом.
Не знаю, как это исправить. Помогите пожалуйста.
Последнее редактирование: