Вы лучше поместите в тело вопроса, а также побольше подробностей напишите: как пробовали решить проблему, что ожидали и что получилось. Traceback опубликуйте.
Народ подтянется, ченьть придумаем.
Дмитрий Касаткин, знаете, сейчас выходные, все штатные медиумы на дачах, хрустальные шары на профилактике… ничем не могу помочь. Попробуйте прижаться головой к монитору и так сидеть не двигаясь. Постараюсь по старинке считать код из ваших мыслей, но может не получиться… года уже не те, через эти новомодные плоские мониторы не умею. Вот раньше через ЭЛТ - уууу….
Функцию get_weather хорошо бы разделить на несколько функций – одна для получения погоды, другая для подготовки и форматирования сообщения, третья для отправки сообщения. В каждой обрабатывать свои ошибки. Не обрабатывать неопределённую ошибку, это плохой подход.
Полагаю, надо убрать try/except и привести полный traceback.
Полагаю, сервер иногда возвращает данные, где какого-то «тэга» нет, вот и ошибка. Когда увидим ошибку, можно будет подробнее разбираться.
И скорее всего тут дело не относится к боту, поэтому тэги бота и телеги лучше убрать.