Parse podatkov iz Arsove strani
16 naročnikov
16 naročnikov
Kako bi s strani http://www.arso.gov.si/vode/podatki/stanje_voda.html dobil vrednosti: Vodostaj, pretok in temperatura za konkretno postajo (Soča Log Čezsoški) ?
Vrednosti bi se izpisale s pomočjo PHP modula v Joomli.
Verjetno bi se dalo z @preg_match in echo ukazom, samo ne vem kako bi zastavil celoten skript.
Tole je del izvorne kode kjer se nahajajo navedene 3 vrednosti:
<tr><td class="onlineimena">Soča - Log Čezsoški</td><td class="onlinedesno">79</td><td class="onlinedesno">13.9</td><td class="onlinedesno"> </td><td class="onlinedesno">9.1</td><td class="onlinedesno">4.</td></tr>
Kakšen namig ?
45 odgovorov
A kdo ve kjer bi dobil nabor vseh možnih ikon iz arsota?
Rad bi jih namreč zamenjal z lepšimi :)
Primeri ikone iz xml-ja:
<nn_icon>overcast</nn_icon> =
<nn_icon>prevCloudy</nn_icon> =
Seveda pomaga! :) Stvar je v tem, da imam narisanih preko 20 ikonic in moram najti nek sistem za izpis le teh.
Nimam pa časa 1 leto, da sproti ugotavjam vse arsotove <nn_icon> vrednosti.
Tukaj sem našel obrazložitev xmlja
http://meteo.arso.gov.si/uploads/meteo/help/sl/xml_service.html
in vse možne <nn_icon> vrednosti
razredi: clear, mostClear, slightCloudy, partCloudy, modCloudy, prevCloudy, overcast, FG (za interpretacijo gl. <nn_shortText>)
To sem že sam spraševal tukaj, pa sem na koncu nekatere stopnje oblačnosti "posplošil" oz. združil, pa nekako deluje. http://www.vreme-idrija.net :D
Če bo kdo rabil podatke za vodostaj:
<?php
$xmlstr =filegetcontents("http://www.arso.gov.si/xml/vode/hidropodatkizadnji.xml");
$arsopodatki = new SimpleXMLElement($xmlstr);
/* Access the <rating> nodes of the first movie.
* Output the rating scale, too. */
foreach ($arsopodatki->postaja as $postaja) {
switch((string) $postaja['sifra'])
{
case '7160':
echo $postaja->reka, ' ';
echo $postaja->merilnomesto, ' ';
echo $postaja->vodostaj, ' ';
echo $postaja->pretok, ' ';
echo $postaja->tempvode, ' ';
break;
case '1355':
echo $postaja->reka, ' ';
echo $postaja->merilnomesto, ' ';
echo $postaja->vodostaj, ' ';
echo $postaja->pretok, ' ';
echo $postaja->tempvode, ' ';
break;
}
}