Прочь лирику, смотрите сами что делает модуль Yr Weatherdata:
Сервис норвежский, но есть погодка для других стран. Касательно Руссланда:
Адыгеа – Агин-Бурят – Алтаи – Алтаи Краи – Амур – Аркхангелск – Астракхан – Башкортостан – Белгород – Брянск – Бурятиа – Чечня – Челябинск – Чита – Чукотка – Чувашиа – Дагестан – Евенкиа – Ингушетиа – Иркутск – Иваново – Жевиш Аутономоус Област – Кабардино-Балкариа – Калининград – Калмыкиа – Калуга – Камчатка – Карачаы-Черкессиа – Карелиа – Кемерово – Кхабаровск – Кхакассиа – Кхантиа-Мансиа – Киров – Коми – Корякиа – Кострома – Краснодар – Красноярск – Курган – Курск – Ленинград – Липетск – Магадан – Мари Ел – Мордовиа – Мосцов – Мосцов област – Мурманск – Ненетсиа – Низхны Новгород – Нортх Оссетиа-Аланиа – Новгород – Новосибирск – Омск – Оренбург – Орыол – Отхер – Пенза – Перм – Приморскы – Псков – Ростов – Рязан – Сакха – Сакхалин – Самара – Саратов – Смоленск – Соутх Курилес – Ст. Петерсбург – Ставропол – Свердловск – Тамбов – Татарстан – Таымыриа – Томск – Тула – Твер – Тюмен – Тыва – Удмуртиа – Уляновск – Уст-Орда Бурятиа – Владимир – Волгоград – Вологда – Воронезх – Ямалиа – Ярославл
Кроме того, там написано, что yr.no располагает погодными данными для 7 миллионов точек в мире и для поиска более точных следует попробовать заюзать поиск.
Забирать здесь: http://drupal.org/project/yr_verdata
Комментарии
Кривоват пока модуль...
Было бы удобно его зацепить к Node location.
Можно попробовать сделать поле CCK вместо их таблицы yr_verdata и парсить его при выводе блока как вариант. Или использовать lat/lot от location, если норвежский сервис понимает координаты.
Вроде автор [##578820]откликнулся на предложение[/##]
Могу поручиться за качество именно сервиса. Уже третий год используем их статистический прогноз для составления туров.
Спасибо, отличная вещь!
А есть какая-то возможность перевести данные, которые получаются с yr.no? Название города, скажем. А то коряво как-то получается.
Все переводится. Только вывод title подправил по аналогии с bonus_title. Вместо
drupal_set_title(t('Weather forecast for !location', array('!location' => $data->location->name)));
вписалdrupal_set_title(t($new));
В tpl блока вывод $location['name'] обернул в t() и перевел, хотя это наверное неправильно.
Результат здесь.
Ни кто не пробовал http://corporate.foreca.com/en/products/forecaweatherapi/ использовать?
понравился модуль...
Кто использует Yr Weatherdata - насколько точно он показывает погоду? Потому что у нас щас снег валит, rp5 нормально показывает 13 мм осадков, а на Yr Weatherdata - осадков 0.
Не понял, а как сделать погоду для нескольких страничек. Например на одной Лондон на другой Москва???
Подскажите как перевести location name потому что на норвежском не очень хочется его видеть.
Еще не разобрался - можно ли выводить графики и прочее. Может быть ктото поделится опытом темизации страницы с погодой. Что еще может этот модуль?
У кого-нибудь есть допиленный модуль? а то у меня не обновляет никоим образом. два дня так прошло. пересоздал город в настройках - все обновил. сырой он еще, но ставить больше пока нечего
У меня обновляется без проблем - только отображается по их времени - не понял как настроить свой часовой пояс.
Два вопроса:
1. версия модуля
2. время обновления какое выставлено?
Скачал последнюю версию с месяц назад. Шесть часов - как и рекомендовано.
значит надо копать.
у меня версия 6.х-2.2, обновление каждые шесть часов
третьи сутки пошли - не обновляет.
крон стоит на каждые три часа
хостинг - it-patrol с ним проблем быть не должно
даже не знаю пока в какую сторону копать
Зашел на ваш сайт - вроде работает - погоду выдает.
это все вручную пока обновляется, можно и скриптом, но все равно не по-человечески
вот сейчас оставил без ручного обновления. строчку поставил про время следующего обновления. посмотрим
http://zhitomirglobe.info/forecast/1 здесь у меня например на эту субботу выводит погоду за двое суток - и за 5 и за 6 число - что это за ошибка и как исправить?
на орге вопрос такой есть. я так понимаю, вывод результата парсера надо немного доделать
Надо на орге порыться - пожет патчи есть.
на орге баг похожий есть, пока никто не ответил
но я сам вроде как решил - начало все обновляться
в бд в таблице yr_verdata было замечено, что поле updated постоянно обновляется. devel показал, что обращение к любой странице сайта вызывает обращение к строке модуля yr_verdata
db_query("UPDATE {yr_verdata} SET updated = %d WHERE yid = %d", time(), $location->yid);
то есть время в updated постоянно обновлялось на текущее. программист из меня конечно никакой, но мне показалось это странным. тем более, что проверка статуса одновлять/не обновлять проходит в строке (поправьте, если не прав)
$result = db_query("SELECT * FROM {yr_verdata} WHERE (updated + %d) < %d ORDER BY updated ASC LIMIT 0, 10", array($maxage, time()));
если время последнего обновления в сумме со временем лимита обновления меньше текущего, то делается запрос xml с сайта yr.no
в моем случае, время постоянно обновлялось и, соответственно, никогда этому условию не удовлетворяло
если это бред с т.з. программиста - не обессудьте, но изменение этой функции помогло:
// Initiate our local file.
$destination = _yr_verdata_local_file($location);
// Set the nextupdate timestamp to 0, in case this is the first time
// we are getting the forecast for this location. Otherwise, see if the
// "nextupdate" property of our existing file has passed.
$nextupdate = 0;
if (file_exists($destination)) {
$xml = simplexml_load_file($destination);
$nextupdate = strtotime($xml->meta->nextupdate);
}
// We don't connect to yr for the file unless it has been at least 12 minutes since the last time we did.
$cooldown = (!empty($location->updated)) ? (time() - $location->updated) : 721; // To avoid a PHP notice.
if (($nextupdate <= time()) && ($cooldown > 720)) { // If this is TRUE...
// ...yr.no have updated their data, so we can get an updated xml feed from yr.no.
$data = _yr_verdata_fetch_xml($location);
if ($data != FALSE) { // If the data was valid, save it. Otherwise, it will be re-checked on next cron run.
file_save_data($data, $destination, FILE_EXISTS_REPLACE);
// Update the database entry with the request time in the 'updated' field.
db_query("UPDATE {yr_verdata} SET updated = %d WHERE yid = %d", time(), $location->yid); // Эта строка в оригинале ниже - 1083
}
}
}
Вообще странно как-то - у всех работает, а у меня нет.
Главное результат
А как решается перевод title и alt у картинок в этом модуле? это надо для того что бы при наведении мышки на картинку (ветра или символа погоды) всплывающее описание было на русском. картинки лежат на сервере. например _http://symbol.yr.no/grafikk/sym/b38/02n.png или _http://fil.nrk.no/yr/grafikk/vindpiler/32/vindpil.0050.330.png
какие пути решения есть?
Тестирую два дня. Пока вроде текущую температуру правильно показывает. Будет ошибаться - заменю. А прогноз на будущее никто угадать не может (хотя прогноз действительно на 2-4 градуса отличается от общеизвестных сервисов). Так что пока вопрос остается. Как вариант - подскажите альтернативу
[quote=kosHta]Блок от гисметео, лучше всего, меня раздражает разница в 6 градусов, 2 или 3 я б перетерпел, но 6 - это слишком. Норвегия где и где я.[/quote
Пока понаблюдаю за своим модулем. Гисметео нету жаль модуля на друпал. Информер не даст прогноз на несколько дней. Парсить?
Ок. Спасибо. возьму на заметку