IMHO.WS

IMHO.WS (https://www.imho.ws/index.php)
-   Веб-программирование (https://www.imho.ws/forumdisplay.php?f=29)
-   -   Утягивание данных о погоде, но откуда? (https://www.imho.ws/showthread.php?t=65222)

Makc 29.07.2004 12:36

Утягивание данных о погоде, но откуда?
 
У меня несколько не стандартный вопрос. Нам надо сделать скрипт, который брал бы данные о погоде с какого-нибудь ресурса и обрабатывал. Сам скрипт напишут знакомые, а вот откуда взять такие сайты, с которых скрипт мог бы это утянуть - не знаю.

Вот и вопрос - подскажите ресурс, с которого скриптом можно регулярно тянуть инфу о погоде :)

is_absent 29.07.2004 13:13

посмотри PEAR_Weather

_http://pear.php.net/package/Services_Weather

lanix 29.07.2004 13:23

наскоолько я знаю - gismeteo.ru хранит всю информацию в текстовых файлах,где имя файла совпадает с кодом города :) а дальше просто закачка всего из файла в РНР и обработка строк

@lexey 29.07.2004 13:42

Дык ... был бы адрес откуда его брать %(

CEO 29.07.2004 13:50

Цитата:

Данные о погоде в любом городе регулярно "грабятся" с сайта Rambler-Погода:
http://weather.rambler.ru/
Москва:
http://weather.rambler.ru/index.html?id=78

lanix 29.07.2004 15:36

http://informer.gismeteo.ru/index.htm?38880 - скачиваешь себе любой информер, декомпилируешь SWF, c помошью Sothnik SWF Decompiler , и в Actions смотришь УРЛ до тхт файла, в котором хранится вся инфа!

Finik 29.07.2004 15:38

а тут <iframe... ставить, или вооще другая система грабежа из рамблера?

Makc 29.07.2004 16:47

Друзья, огромное вам всем спасибо за помощь! Ооочень признателен, с меня кармы всем :biggrin:

VOVOV 24.01.2006 18:16

Ребят, а у меня такой вопрос.
Есть городские порталы, там вообще на неделю погода расписывается, даже по дням. как они вообще такие вещи делают? с кем то договариваються?

Stasik 24.01.2006 20:03

с тем же gismeteo, да можно и ихний прогноз погоды обработать и у себя показать

P.S.: я беру тут http://informer.gismeteo.ru/text/26702-1.JS :)

kaw 02.02.2006 01:13

на том же гисметео есть экспорт погоды на текущий день в RSS.
далее - парсинг RSS и форматирование вывода в желаемом виде

apoc 22.02.2006 12:27

согласен... RSS рулит, раньше парсил JS.

вот один из кусочков моего парсера...

Код:

...
$OBLAST = array(
0 => array(33946,"АР Крим","АР Крым"),
1 => array(33562,"Вінницька обл.","Винницкая обл.")
.......
.......
);
...
function GisUrl($id) { global $OBLAST; return "http://informer.gismeteo.ru/xml/".((isset($OBLAST[$id][0]))?$OBLAST[$id][0]:$OBLAST[9][0])."_1.xml"; }
...
foreach($OBLAST as $index=>$oblast)
{
        $interlive = 22; // расстояние между днями в XML
        $url = GisUrl($index);
        $data = join("",file($url));
        $XML = xml_parser_create();
        xml_parse_into_struct($XML,$data,$XML_vals,$XML_index);
        xml_parser_free($XML);
        $DATA['town'] = urldecode($XML_vals[2]['attributes']['SNAME']);
        for ($i=1;$i<=4;$i++)
        {
                $DATA['day'] = $XML_vals[3+$interlive*($i-1)]['attributes']['DAY']*1;
                $DATA['month'] = $XML_vals[3+$interlive*($i-1)]['attributes']['MONTH']*1;
                $DATA['year'] = $XML_vals[3+$interlive*($i-1)]['attributes']['YEAR']*1;
                $DATA['hour'] = $XML_vals[3+$interlive*($i-1)]['attributes']['HOUR']*1;
                $DATA['weekday'] = $XML_vals[3+$interlive*($i-1)]['attributes']['WEEKDAY']*1;
                $DATA['cloudiness'] = $XML_vals[4+$interlive*($i-1)]['attributes']['CLOUDINESS']*1;
                $DATA['precipitation'] = $XML_vals[4+$interlive*($i-1)]['attributes']['PRECIPITATION']*1;
                $DATA['rpower'] = $XML_vals[4+$interlive*($i-1)]['attributes']['RPOWER']*1;
                $DATA['spower'] = $XML_vals[4+$interlive*($i-1)]['attributes']['SPOWER']*1;
                $DATA['pressure'] = ($XML_vals[7+$interlive*($i-1)]['attributes']['MIN']+$XML_vals[7+$interlive*($i-1)]['attributes']['MAX'])/2;
                $DATA['temperature'] = ($XML_vals[10+$interlive*($i-1)]['attributes']['MIN']+$XML_vals[10+$interlive*($i-1)]['attributes']['MAX'])/2;
                $DATA['windspeed'] = ($XML_vals[13+$interlive*($i-1)]['attributes']['MIN']+$XML_vals[13+$interlive*($i-1)]['attributes']['MAX'])/2;
                $DATA['winddirection'] = $XML_vals[13+$interlive*($i-1)]['attributes']['DIRECTION']*1;
                $DATA['relwet'] = ceil(($XML_vals[16+$interlive*($i-1)]['attributes']['MIN']+$XML_vals[16+$interlive*($i-1)]['attributes']['MAX'])/2);
                mysql_query("INSERT INTO `weather` VALUES(".$index.",'".join("','",$DATA)."')");
        }
}
...



Часовой пояс GMT +4, время: 18:16.

Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.