Уведомления

Группа в Telegram: @pythonsu

#1 Окт. 4, 2016 14:49:35

silenoz
Зарегистрирован: 2016-10-04
Сообщения: 5
Репутация: +  0  -
Профиль   Отправить e-mail  

Неверное определение текущей даты или проблемы со временем?

Изучаю питон и потихоньку реализовываю бота погоды. Код с ним размещаю на сервере heroku (местоположение - Европа). И с ним или самим кодом у меня проблемы.
Данные погоды беру после парсинга страницы http://informer.gismeteo.ru/xml/27612_1.xml

 def test(url, town):
file = urllib.request.urlopen(url)
data = file.read()
file.close()
current_day = datetime.datetime.now()
forecasts = []
# парсю xml
dom = parseString(data)
forecast = dom.getElementsByTagName('FORECAST')
for node in forecast:
    day = node.getAttribute('day')
    tod = node.getAttribute('tod')
…..и т.д. …. после этого:
 # формируем массив, в котором лежат данные о погоде
    forecasts.append({
        'day': int(day),
        'tod': int(tod),
        'precipitation': int(precipitation),
        'temp': temp,
        'cloudiness': int(cloudiness),
    })
for forecast in forecasts[::-1]:
    day = u'Сегодня' if forecast['day'] == current_day.day else u'Завтра'
if forecast['tod'] == 0:
    tod = u'ночью'
elif forecast['tod'] == 1:
    tod = u'утром'
elif forecast['tod'] == 2:
    tod = u'днем'
elif forecast['tod'] == 3:
    tod = u'вечером'
else:
    tod = '-'
… и т.д….

После заливки кода на сервер, твиты публикуются странным образом.
Во-первых, с отставанием в несколько часов.
Во-вторых, прогноз погоды дается по часам: на ночь (3 часа ночи), утро (9 часов утра), день (15ч), вечер (21ч). Твит, каждый раз публикуется с префиксом “Завтра”. То есть: Завтра ночью, Завтра утром, Завтра днем, Завтра вечером.
Подумал, что проблема с временем на сервере. Вроде как там стоит UTC 00:00. По команде heroku config:add TZ=“Europe/Moscow” установил время Московское. Ситуации это не изменило.
Подскажите, проблема в неправильном определении текущего дня (Сегодня/Завтра) или с временем на сервере? Как исправить?

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version