Internetről szövegrészlet letöltése.

Fórumok

Üdv!
Írni szeretnék egy startup scriptet, ami induláskor letöltene adatokat a netről. (pl euró-forint árfolyam, hőméréséklet stb.) Az a kérdésem ezeket hogyan a lehet leszedni? gondoltam arra hogy wget-tel eltöltöm a a html-t és abból egy programmal kikerestetem az adatot, tehát ha más nincs akkor nekiállok azt megírni csak gondoltam, hátha van rá ésszerűbb megoldás.
Ha nem lettem volna érthető szóljatok nyugodtan. :)

Hozzászólások

"gondoltam arra hogy wget-tel eltöltöm a a html-t és abból egy programmal kikerestetem az adatot"

Én így csinálom. Nekem bevált.

--
trey @ gépház

Nálam

curl|sed

kombó van. így pl ha már kinyertem az adatot, ami kell, nem kell tovább tölteni az oldalt.

---------------------------------------------------------------------------------------
Unix is simple. It just takes a genius to understand its simplicity. — Dennis Ritchie

Az MNB-től az aznapi árfolyamot XML-ben is le lehet tölteni. Egy perl szkripttel dolgozzuk fel és töltjük be DB-be.

Hétvégén írtam egy ilyet időjárásra, szórakoztató kis project volt. Látom akad még hozzám hasonló elvetemült. :D

-
Debian Squeeze

conkyhoz es tarsaihoz kb. nonstop hegesztenek hasonlo dolgokat, erdemes related forumokon korbenezni, bar altalaban a fentebb megbeszelt modszerekhez hasonloan mukodnek

[insert line here]
B.C. 3500 - DIY Vehicle / A.D. 30 - DIY Religion / A.D. 1991 - DIY OS

Egy idoben sok hasonlo feladatom volt, ugyhogy irtam ra egy elegge nehezen kezelheto (en mondjuk atlatom) keretrendszert. Tud XPath-t es regexpet is, mert nehany oldalon hol az egyik hol a masik a kenyelmesebb. Ha fontos az adat, erdemes lementeni a lekerdezes eredmenyet, hogy ha valtozna az oldal szerkezete, akkor kesobb ki tudd javitani a parsert es igy ujrafuttathatod a regi adatokon (mar ha lenyeges). Hibakezeles szinten fontos, halozati hiba, karbantartas/leallas meg formatumvaltozas miatt.

Egyebkent pont az MNB-s arfolyamra jobb a webservice (feljebb mar emlitettek):
http://www.mnb.hu/arfolyamok.asmx
pl. php-ban par lekerdezes:


<?php

  $objClient = new SoapClient("http://www.mnb.hu/arfolyamok.asmx?WSDL", array('trace' => true));
  var_dump($objClient->__getFunctions());
  
  $currrates =  $objClient->GetCurrentExchangeRates();
  var_dump($currrates);
  
  $arrParameters = array('startDate' => '2008-09-01', 'endDate' => '2008-10-16', 'currencyNames' => 'CHF');
  $rates =  $objClient->GetExchangeRates($arrParameters);
  var_dump($rates);

?>

wget+grep? plusz éehet hogy hulyeseget mondok, de valami a szovegreszre illeszkedo regexp is kene.