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
Kako bi pa naj izgledala koda za tole:
http://www.meteo.si/uploads/probase/www/observ/surface/text/sl/observationAmssilatest.xml
Recimo, da želimo izluščiti podatke le za Celje, Ljubljano in Maribor
Glede na to, da se tukaj piše o parsanju bom kar tukaj vprašal.
Probal sem že vse možnosti opisane na 1. strani vendar mi nekako ne gre :)
Rad bi sparsal: ceno, vseeno katero, 1 ali 2.
http://informers.mt5.com/en/quotesonline/informer/sz=54020&ticker=NZDCHF
Če prav razumem moram sedaj kodo:
<?xml version="1.0" encoding="UTF-8"?>
<query xmlns:yahoo="http://www.yahooapis.com/v1/base.rng"
yahoo:count="2" yahoo:created="2013-10-15T19:54:30Z" yahoo:lang="en-US">
<diagnostics>
<publiclyCallable>true</publiclyCallable>
<url execution-start-time="0" execution-stop-time="333" execution-time="333"><![CDATA[http://informers.mt5.com/en/quotes_online/informer/sz=540_20&ticker=NZDCHF]]></url>
<url execution-start-time="0" execution-stop-time="333" execution-time="333"><![CDATA[http://informers.mt5.com/en/quotes_online/informer/sz=540_20&ticker=NZDCHF]]></url>
<user-time>335</user-time>
<service-time>664</service-time>
<build-version>0.2.1867</build-version>
</diagnostics>
<results>
<td class="lines">
<p>0.7638</p>
</td>
<td class="lines">
<p>0.7648</p>
</td>
</results>
</query>
shraniti v XML, ter potem iz PHP-ja klicati ta XML?
lahko raje probaš direkt json pridobit pa potem samo decodiraš json v php array.
$rest_json = file_get_contents("http://query.yahooapis.com/v1/public/yql?q=select%20*%20from%20html%20where%20url%3D%22http%3A%2F%2Finformers.mt5.com%2Fen%2Fquotes_online%2Finformer%2Fsz%3D540_20%26ticker%3DNZDCHF%22%20%0Aand%20xpath%3D'%2F%2Ftable%5B%40class%3D%22mt5_quotes_table%22%5D%2Ftr%2Ftd%5B%40class%3D%22lines%22%5D'&format=json&callback=");
$rest_vars = json_decode($rest_json, true);