Текстовый информер погоды

Тема в разделе ".:: Готовые решения", создана пользователем finogeev, 8 июл 2009.

Статус темы:
Закрыта.
  1. finogeev

    finogeev Прохожие

    Не бейте меня, т.к. ответа не нашел ...

    Кто знает как можно вытащить погоду с любого портала (Гисметео, яндекс, гидромецентр и т.п.) ... Мне нужен не графический или рекламный информер, а именно что бы он был полностью настраевым ... Короче в виде текста, или вообще код который бы парсил или брал напрямую у них ...

    С курсом валют нашел код ...
     
  2. D@nil

    D@nil

    Регистр.:
    1 окт 2006
    Сообщения:
    338
    Симпатии:
    122
    Парсишь с gismeteo.ru погоду и выдаешь ее пользователю через JS.

    Примеры реализации найдешь погуглив по запросу информер погода
     
  3. jcrush

    jcrush

    Регистр.:
    10 ноя 2006
    Сообщения:
    692
    Симпатии:
    55
    Тащи RSS:
    http://rp5.ru/rss/5483/ru
     
    Den_4k нравится это.
  4. anz

    anz Level XXL

    Регистр.:
    17 окт 2006
    Сообщения:
    936
    Симпатии:
    304
    вот так сделал, работает! проверьте может что ни так!
     

    Вложения:

    • inc_pogoda.rar
      Размер файла:
      3,7 КБ
      Просмотров:
      70
    penguen нравится это.
  5. gls

    gls Комбат

    Регистр.:
    11 янв 2007
    Сообщения:
    577
    Симпатии:
    294
    а как его прикручивать? пробовал запускать непосредственно его, и инклудил - нифига не пашет
     
  6. anz

    anz Level XXL

    Регистр.:
    17 окт 2006
    Сообщения:
    936
    Симпатии:
    304
    инклудом, пашет и на php4 и php 5 нужет CURL и разрешены внешние соединения и работа XML - вроде всё

    p/s/ путь от корня до временного файла, попробуй его сначало создать.
     
  7. diavolic

    diavolic

    Регистр.:
    17 мар 2010
    Сообщения:
    522
    Симпатии:
    102
    уже скидывал где то здесь свой скрипт на рп5. остальные погодники парсятся подобным образом.

    PHP:
    function getrp5 ($num=123на входе номер города с сайта rp5
    {
        if ((
    $num<1) || ($num>60000)) $num=123;
        
    $st "";
        
    $st1 "";
        
    $fl file_get_contents ("http://wap.rp5.ru/$num/ru"); 
        
    $fl utf2win($fl);
        if (
    preg_match ("/<h1>([^<]+)/i"$fl$rg))
        {
            
    $st1 "Прогноз погоды для г.".$rg[1]."\r\n\r\n";
        } else
            
    $st1 "Город для поргноза погоды не определен [$num]\r\n\r\n";

        if (
    preg_match ("/<table>([^~]+)<\/table>/i"$fl$rg))
        {
            
    $st $rg[1];
            
    $st preg_replace ("/<td[^>]*>/i""",$st);
            
    $st preg_replace ("/<font[^>]*>/i""",$st);
            
    $st preg_replace ("/<tr[^>]*>/i""",$st);
            
    $st preg_replace ("/<img[^>]*>/i""",$st);
            
    $st preg_replace ("/<\/td>/i""",$st);
            
    $st preg_replace ("/<\/tr>/i""\n",$st);
            
    $st preg_replace ("/<\/font>/i""",$st);
            
    $st preg_replace ("/&ordm;/i"" ",$st);
            
    $st preg_replace ("/<b>/i""",$st);
            
    $st preg_replace ("/<\/b>/i""",$st);
            
    $st preg_replace ("/<br \/>/i""\n",$st);
            
    $st str_replace ("%\n""%\n\n-----------------------------------\n\n"$st);
            
    $st str_replace ("%)""% )"$st);
            
    $arr explode ("\n"$st);
            
    $st $arr[0]."\r\n\r\n-----------------------------------\r\n\r\n";
            for (
    $i=1$i<count ($arr); $i++)
                
    $st .= trim ($arr[$i])."\r\n";
        }
        return 
    $st1.$st;
    }
     
Статус темы:
Закрыта.