vovik_sumy 0 Опубликовано: 6 февраля 2007 Рассказать Опубликовано: 6 февраля 2007 Jemsbond, А откуда же? Цитата Ссылка на сообщение Поделиться на других сайтах
kolyma 2 Опубликовано: 6 февраля 2007 Рассказать Опубликовано: 6 февраля 2007 Простой граббер погоды с яндекса. Может это переделать под DLE <? set_time_limit(0); $fd=fopen("http://weather.yandex.ru/city.xml?print=1&city=25913","r"); while ($w = fgets($fd, 4096)) { $d.=$w; } ereg('<br><br><br>(.*)<tr><td valign="bottom">', $d, $title); $title[1]=str_replace("/i/","http://weather.yandex.ru/i/",$title[1]); if(file_exists("weather.html")) { unlink("weather.html"); } $f=fopen("weather.html","a"); fwrite($f,$title[1]); ereg('<div class="big"><nobr>(.*)</nobr></div>', $title[1], $inf); if(file_exists("informer.html")) { unlink("informer.html"); } $f=fopen("informer.html","a"); fwrite($f,$inf[1]); ?> Цитата Ссылка на сообщение Поделиться на других сайтах
Jemsbond 0 Опубликовано: 7 февраля 2007 Рассказать Опубликовано: 7 февраля 2007 kolyma КОНЕЧНО! переделай под ДЛЕ. А вообще огромное спасибо на этом хотя бы! Цитата Ссылка на сообщение Поделиться на других сайтах
Shinji 0 Опубликовано: 7 февраля 2007 Рассказать Опубликовано: 7 февраля 2007 Есть такой код... правда для него нужно выполнение PHP из шаблона... Если у кого-нибудь дойдут рури до модуля, то стукните мне по асе 327358756 всячески помогу %) Особенности: Кеш xml 4 раза в сутки - по времени обновления на сайте + 15 минут (для учета некоторых задержек). <? // ************************************************************************ // Обработка погоды с сайта GisMeteo.ru // ************************************************************************ // ****** Задаем основные переменные. $url = "http://informer.gismeteo.ru/xml/28440_1.xml"; //Адрес XML для Екатеринбурга. $data_dir = "./engine/data/weather/"; $date = date("Y-m-d"); $date_prew = date("Y-m-d", mktime(0,0,0,date("m"),date("d")-1,date("Y"))); $time = date("Gi"); // ****** Сохраняем файлик на сервере 4 раза в сутки. settype($time,"integer"); if ($time>="2045") { if (!file_exists("$data_dir".$date."-2045")) { copy($url,"$data_dir".$date."-2045"); $file = "$data_dir".$date."-2045"; } else { $file = "$data_dir".$date."-2045"; }; } elseif ($time>="1445") { if (!file_exists("$data_dir".$date."-1445")) { copy($url,"$data_dir".$date."-1445"); $file = "$data_dir".$date."-1445"; } else { $file = "$data_dir".$date."-1445"; }; } elseif ($time>="845") { if (!file_exists("$data_dir".$date."-845")) { copy($url,"$data_dir".$date."-845"); $file = "$data_dir".$date."-845"; } else { $file = "$data_dir".$date."-845"; }; } elseif ($time>="245") { if (!file_exists("$data_dir".$date."-245")) { copy($url,"$data_dir".$date."-245"); $file = "$data_dir".$date."-245"; } else { $file = "$data_dir".$date."-245"; }; } elseif ($time>="0") { if (!file_exists("$data_dir".$date_prew."-245")) { copy($url,"$data_dir".$date_prew."-245"); $file = "$data_dir".$date_prew."-245"; } else { $file = "$data_dir".$date_prew."-245"; }; }; $weather = array(); function startTag($parser, $name, $attrs) { global $weather; $tag=array("name"=>$name,"attrs"=>$attrs); array_push($weather,$tag); }; function cdata($parser, $cdata) { global $weather,$i; if(trim($cdata)) { $weather[count($weather)-1]['cdata']=$cdata; }; }; function endTag($parser, $name) { global $weather; $weather[count($weather)-2]['children'][] = $weather[count($weather)-1]; array_pop($weather); }; $xml_parser = xml_parser_create(); xml_set_element_handler($xml_parser, "startTag", "endTag"); xml_set_character_data_handler($xml_parser, "cdata"); $data = xml_parse($xml_parser,file_get_contents($file)); if(!$data) { die(sprintf("Ошибка XML: %s на строке %d",xml_error_string(xml_get_error_code($xml_parser)),xml_get_current_line_number($xml_parser))); }; xml_parser_free($xml_parser); // ****** Вид массива. // print("<pre>\n"); // print_r($weather); // print("</pre>\n"); echo $weather["0"]["children"]["0"]["children"]["0"]["children"]["0"]["attrs"]["DAY"]."."; echo $weather["0"]["children"]["0"]["children"]["0"]["children"]["0"]["attrs"]["MONTH"]."."; echo $weather["0"]["children"]["0"]["children"]["0"]["children"]["0"]["attrs"]["YEAR"]." на "; echo $weather["0"]["children"]["0"]["children"]["0"]["children"]["0"]["attrs"]["HOUR"].":00<br>"; echo "Температура: ".$weather["0"]["children"]["0"]["children"]["0"]["children"]["0"]["children"]["2"]["attrs"]["MAX"].".."; //Температура максимальная echo $weather["0"]["children"]["0"]["children"]["0"]["children"]["0"]["children"]["2"]["attrs"]["MIN"]."<br>"; //Температура минимальная echo "Давление: ".$weather["0"]["children"]["0"]["children"]["0"]["children"]["0"]["children"]["1"]["attrs"]["MIN"].".."; //Давление минимальное echo $weather["0"]["children"]["0"]["children"]["0"]["children"]["0"]["children"]["1"]["attrs"]["MAX"]."<br>"; //Давление максимальное ?> Цитата Ссылка на сообщение Поделиться на других сайтах
kolyma 2 Опубликовано: 7 февраля 2007 Рассказать Опубликовано: 7 февраля 2007 Shinji, Я его просто проиклудил в шаблон, во фрейм и отлично работает. Цитата Ссылка на сообщение Поделиться на других сайтах
Jemsbond 0 Опубликовано: 8 февраля 2007 Рассказать Опубликовано: 8 февраля 2007 Shinji, У мя не хочет работать как и kolyma фреймю а он Warning: copy(/pr/pogoda/moskva/2007-02-08-845) [function.copy]: failed to open stream: No such file or directory in C:\Server\htdocs\pr\pogoda\moskva.php on line 43 Warning: file_get_contents(/pr/pogoda/moskva/2007-02-08-845) [function.file-get-contents]: failed to open stream: No such file or directory in C:\Server\htdocs\pr\pogoda\moskva.php on line 104 .. на :00 Температура: .. Давление: .. P.S. Директория /pr/pogoda/moskva/ Существует И ещё. В какое время он грабит с сервера? Цитата Ссылка на сообщение Поделиться на других сайтах
Shinji 0 Опубликовано: 8 февраля 2007 Рассказать Опубликовано: 8 февраля 2007 Shinji, У мя не хочет работать как и kolyma фреймю а он Warning: copy(/pr/pogoda/moskva/2007-02-08-845) [function.copy]: failed to open stream: No such file or directory in C:\Server\htdocs\pr\pogoda\moskva.php on line 43 Warning: file_get_contents(/pr/pogoda/moskva/2007-02-08-845) [function.file-get-contents]: failed to open stream: No such file or directory in C:\Server\htdocs\pr\pogoda\moskva.php on line 104 .. на :00 Температура: .. Давление: .. P.S. Директория /pr/pogoda/moskva/ Существует И ещё. В какое время он грабит с сервера? Граббит он 4 раза в сутки в 20:45, 14:45, 8:45, 2:45 - это через 15 минут после обновления на gismeteo.ru (покрайней мере если у них все нормально обновляется..) А ошибки именно из-за того что скрипт не может найти папочку... Цитата Ссылка на сообщение Поделиться на других сайтах
compi 0 Опубликовано: 11 февраля 2007 Рассказать Опубликовано: 11 февраля 2007 тоже самое, как пути тока не писал, не пашет Цитата Ссылка на сообщение Поделиться на других сайтах
Shinji 0 Опубликовано: 12 февраля 2007 Рассказать Опубликовано: 12 февраля 2007 В настоящее время делаем модуль... через недельку ждите %) Цитата Ссылка на сообщение Поделиться на других сайтах
alukart2 0 Опубликовано: 12 февраля 2007 Рассказать Опубликовано: 12 февраля 2007 хе а я установил в локалку... так все отлично идет вот пример 12.2.2007 на 23:00 Температура: -14..-16 Давление: 737..739 ps а я думал что он на все города грабить будет Цитата Ссылка на сообщение Поделиться на других сайтах
Shinji 0 Опубликовано: 12 февраля 2007 Рассказать Опубликовано: 12 февраля 2007 хе а я установил в локалку... так все отлично идет вот пример 12.2.2007 на 23:00 Температура: -14..-16 Давление: 737..739 ps а я думал что он на все города грабить будет Он грабит на все города: заходишь на сайт http://informer.gismeteo.ru/xml.html?27612 - выбираешь нужный город и получаешь ссылку которую надо подставить в самом верху скрипта... Цитата Ссылка на сообщение Поделиться на других сайтах
compi 0 Опубликовано: 12 февраля 2007 Рассказать Опубликовано: 12 февраля 2007 он в настройках разобраться не может, а уже кричит что грабит Цитата Ссылка на сообщение Поделиться на других сайтах
Shinji 0 Опубликовано: 12 февраля 2007 Рассказать Опубликовано: 12 февраля 2007 бывает %) Цитата Ссылка на сообщение Поделиться на других сайтах
alukart2 0 Опубликовано: 13 февраля 2007 Рассказать Опубликовано: 13 февраля 2007 Он грабит на все города: заходишь на сайт http://informer.gismeteo.ru/xml.html?27612 - выбираешь нужный город и получаешь ссылку которую надо подставить в самом верху скрипта... он в настройках разобраться не может, а уже кричит что грабит я про другое --- есть наподобе скрипт только он полностью сайт грабит там и ссылки и фотки (тучи...) и все грузится со своего сервака Можно сделать полноценный сайт с погодой. Цитата Ссылка на сообщение Поделиться на других сайтах
JIGSAW 0 Опубликовано: 13 февраля 2007 Рассказать Опубликовано: 13 февраля 2007 Скажите, приведенный выше код обеспечивает просмотр погоды пользователем с моего сайта, либо же ему надо "палить" траффик и данные ему приходят с сайта погоды? Цитата Ссылка на сообщение Поделиться на других сайтах
Shinji 0 Опубликовано: 13 февраля 2007 Рассказать Опубликовано: 13 февраля 2007 Он грабит на все города: заходишь на сайт http://informer.gismeteo.ru/xml.html?27612 - выбираешь нужный город и получаешь ссылку которую надо подставить в самом верху скрипта... он в настройках разобраться не может, а уже кричит что грабит я про другое --- есть наподобе скрипт только он полностью сайт грабит там и ссылки и фотки (тучи...) и все грузится со своего сервака Можно сделать полноценный сайт с погодой. А что Вам здесь мешает полностью вывести массив на экран и ознакомившись с инструкцией на Gismeteo.ru правильно оформить вывод и ветра, и влажности, и давления, и температуры... и вообше сделать так что бы скрипт показывал не ближайший прогноз, а все 4, которые он граббит? Знаю - делать и думать лениво... в будущих версиях ждите... Скажите, приведенный выше код обеспечивает просмотр погоды пользователем с моего сайта, либо же ему надо "палить" траффик и данные ему приходят с сайта погоды? нет... для пользователя нечего не скачивается - скачивает сервер на котором запущен php код. Цитата Ссылка на сообщение Поделиться на других сайтах
spoomer 0 Опубликовано: 16 февраля 2007 Рассказать Опубликовано: 16 февраля 2007 Ну как там продвижения ?? Копирайты на такрм деле гиблое дело Цитата Ссылка на сообщение Поделиться на других сайтах
patrokl 0 Опубликовано: 19 февраля 2007 Рассказать Опубликовано: 19 февраля 2007 (изменено) Сделал грабер погоды.. только вот для сохранения в файл и загрузки его впоследствии ума не хватило.. при каждой загрузке страници.. модуль обращается на сайт _http://www.gismeteo.ru , выводится как погода текущая так и погода на три дня, думаю не сложно переделать его и на другое число дней (5 и 10) ссылка на большой скрин ЗДЕСЬ Скачать Изменено 19 февраля 2007 пользователем patrokl Цитата Ссылка на сообщение Поделиться на других сайтах
Omnesis 0 Опубликовано: 4 марта 2007 Рассказать Опубликовано: 4 марта 2007 А как вывести её в отделную страницу? Я создал статическую написал {weathert} но неработает... Цитата Ссылка на сообщение Поделиться на других сайтах
gopal 0 Опубликовано: 5 марта 2007 Рассказать Опубликовано: 5 марта 2007 спасибо, интересный мод Цитата Ссылка на сообщение Поделиться на других сайтах
Jemsbond 0 Опубликовано: 6 марта 2007 Рассказать Опубликовано: 6 марта 2007 Сделал грабер погоды.. только вот для сохранения в файл и загрузки его впоследствии ума не хватило.. при каждой загрузке страници.. модуль обращается на сайт _http://www.gismeteo.ru , выводится как погода текущая так и погода на три дня, думаю не сложно переделать его и на другое число дней (5 и 10) ссылка на большой скрин ЗДЕСЬ Скачать О!! Такую крутую фичу выпустили и ссылка сдохла! ПЕРЕЗАЛЕЙТЕ!!!! Цитата Ссылка на сообщение Поделиться на других сайтах
vovik_sumy 0 Опубликовано: 6 марта 2007 Рассказать Опубликовано: 6 марта 2007 Работает ссылка. Пробуй ещё. Цитата Ссылка на сообщение Поделиться на других сайтах
Jemsbond 0 Опубликовано: 6 марта 2007 Рассказать Опубликовано: 6 марта 2007 Работает ссылка. Пробуй ещё. Всё, спасибо. ОГРОМНОЕ СПАСИБО!!! Цитата Ссылка на сообщение Поделиться на других сайтах
Sarvan 35 Опубликовано: 12 марта 2007 Рассказать Опубликовано: 12 марта 2007 Кто поставил дайте посмотреть в работе )) Цитата Ссылка на сообщение Поделиться на других сайтах
sava36 0 Опубликовано: 12 марта 2007 Рассказать Опубликовано: 12 марта 2007 (изменено) Лови - http://www.tbilisi-portal.com/datalife/ Изменено 12 марта 2007 пользователем sava36 Цитата Ссылка на сообщение Поделиться на других сайтах
Рекомендованные сообщения
Присоединяйтесь к обсуждению
Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.