Ubuntu 24.04.1 LTS | Lataa ja asenna | Tutustu yhteisöön | Blogi | Yritysten tarjoamat palvelutValmistajien tukemat Ubuntu-tietokoneet: kannettavatietokone.fi uudet ja käytetyt sekä Lenovo-verkkokauppa
http://ilmatieteenlaitos.fi/saa/kajaaniTäällä on vähän parsittuna:https://foorumi.linux.fi/t/uusi-conky-saascripta-ilmatieteenlaitos-fi/1475/64
Lainaus käyttäjältä: kamara - 19.02.17 - klo:12.21http://ilmatieteenlaitos.fi/saa/kajaaniTäällä on vähän parsittuna:https://foorumi.linux.fi/t/uusi-conky-saascripta-ilmatieteenlaitos-fi/1475/64En muuten keksinyt miten noista napataan se info tekstitiedostoon?
wget http://www.foreca.fi/Finland/Kajaanicat Kajaani |grep date
Lainaus käyttäjältä: jekku - 19.02.17 - klo:13.15Lainaus käyttäjältä: kamara - 19.02.17 - klo:12.21http://ilmatieteenlaitos.fi/saa/kajaaniTäällä on vähän parsittuna:https://foorumi.linux.fi/t/uusi-conky-saascripta-ilmatieteenlaitos-fi/1475/64En muuten keksinyt miten noista napataan se info tekstitiedostoon?Mitkä tiedot tarvitset. Näyttäisi forecaltakin saavan joitain tietoja grepattua:Koodia: [Valitse]wget http://www.foreca.fi/Finland/Kajaanicat Kajaani |grep dateLämpötila näkyy löytyvän, muttei lumen syvyyttä.
wget http://www.foreca.fi/Finland/Kajaanicat Kajaani |grep date1020002897': { date: '19.2.', time: '15.00', temp: -3, flike: -8, rhum: 82, v ...
var stations = [{id: '1020002897', n: "Kajaani Lentoasema"}, {id: '1020002739', n: "Sotkamo Kuolaniemi"}, {id: '1020002859', n: "Puolanka, Paljakka"}, {id: '1020002834', n: "Vieremä Kaarakkala"}, {id: '1020002883', n: "Kajaani Petäisenniska"}];
Kai noilla on pärjättävä..
Jos viitsisi skriptata (Python lienee helpoin työkalu) tarpeeksi, niin tuosta saattaisi olla hyötyä:http://ilmatieteenlaitos.fi/avoin-data-avattavat-aineistot
wget https://raw.githubusercontent.com/nmikkila/weatherdata/master/current_weather/foreca.py
python foreca.py http://www.foreca.fi/Finland/Kajaani
Kyhäsin skriptin Foreca.fi:n havaintodatan latailuun. Näyttää kaikki sivulla piilevät havaintoasemat.Lataa:Koodia: [Valitse]wget https://raw.githubusercontent.com/nmikkila/weatherdata/master/current_weather/foreca.pyAja:Koodia: [Valitse]python foreca.py http://www.foreca.fi/Finland/Kajaani
sudo apt-get install python-requests
wget -O- http://ilmatieteenlaitos.fi/saa/kajaani | grep -oP "supportedStations=.*?;"
wget -O- http://ilmatieteenlaitos.fi/saa/kajaani | grep -oP "supportedStations=.*?;" | sed "s/\([0-9]*:{\)/\n\1/g"
wget "http://ilmatieteenlaitos.fi/observation-data?station=126736" -O observations.json
Vajaan viikon havainnot JSON-muodossa (sama data kuin sivulla näkyvä graafisesti selattava Paikalliset säähavainnot):Koodia: [Valitse]wget "http://ilmatieteenlaitos.fi/observation-data?station=126736" -O observations.json
Lainaus käyttäjältä: nm - 19.02.17 - klo:20.39Vajaan viikon havainnot JSON-muodossa (sama data kuin sivulla näkyvä graafisesti selattava Paikalliset säähavainnot):Koodia: [Valitse]wget "http://ilmatieteenlaitos.fi/observation-data?station=126736" -O observations.jsonKiitos tästä! Mistähän tuokin löytyi?
python foreca.py http://www.foreca.fi/Finland/Kajaani | less
Traceback (most recent call last): File "foreca.py", line 138, in <module> main() File "foreca.py", line 135, in main pretty_print(parsedObservations) File "foreca.py", line 126, in pretty_print o["snow_depth"]))UnicodeEncodeError: 'ascii' codec can't encode character u'\xb0' in position 123: ordinal not in range(128)(END)
python3 foreca.py http://www.foreca.fi/Finland/Kajaani | less
Mutta kun koetan ohjata tulosteen, esim:Koodia: [Valitse]python foreca.py http://www.foreca.fi/Finland/Kajaani | lessniinKoodia: [Valitse]Traceback (most recent call last): File "foreca.py", line 138, in <module> main() File "foreca.py", line 135, in main pretty_print(parsedObservations) File "foreca.py", line 126, in pretty_print o["snow_depth"]))UnicodeEncodeError: 'ascii' codec can't encode character u'\xb0' in position 123: ordinal not in range(128)(END)Ilmeisesti tuttu juttu ja jos/kun python tutumpi niin oikaistavissa?http://stackoverflow.com/questions/9942594/unicodeencodeerror-ascii-codec-cant-encode-character-u-xa0-in-position-20EDIT:Ja syyhän oli tuossa kun kutsuin vanhempaa tulkkia,
PYTHONIOENCODING=utf-8 python2 foreca.py http://www.foreca.fi/Finland/Kajaani | less
Koodia: [Valitse]python3 foreca.py http://www.foreca.fi/Finland/Kajaani | lesstoimii - tosin ohittaa ääkköset sujuvasti, mutta se ei ole olennaista tässä tapauksessa.
// https://ilmatieteenlaitos.fi/observation-data?station=874863 -----> httpContentvar jsonData = JSON.parse(httpContent);var temperatureArray = jsonData.t2m;var lastTemperature = temperatureArray[temperatureArray.length-1]; // [epochtime, value]var lastTemperatureValue = lastTemperature[1];
Olen aikaisemmin ryystänyt (wgetillä) sivunhttp://www.foreca.fi/Finland/KajaaniJa parsinut siitä muutamia detaljeja, kuten lämpötilan ja lumensyvyyden tilastoihini.Mutta jokunen päivä sitten sivun rakenne muuttunut enkä löydä noita tietoja enää.Onko joku temppu jolla saa napattua ulkolämpötilan jostain havaintoasemalta ihan tekstiformaatissa?Hyvin irtoaa, tuolla myöhemmin mainitulla python-palikalla