Prognoza pogody w conkym

Bash, C, C++, Java, PHP, Ruby, GTK, Qt i wiele innych - wszystko tutaj.
Awatar użytkownika
queyas
Piegowaty Guziec
Piegowaty Guziec
Posty: 23
Rejestracja: 17 sie 2007, 23:33
Płeć: Mężczyzna
Wersja Ubuntu: 8.04
Środowisko graficzne: GNOME
Kontakt:

Prognoza pogody w conkym

Post autor: queyas »

Mam skrypt do conky'ego - pogodynka.sh (kod można podejrzeć np. w tym wątku)
Działa to jednak jak aplet pogody na panelu - podaje aktualny stan pogody

Jak to przerobić żeby podawało prognozę, najlepiej godzina po godzinie najbliższe np. 6 godzin i kolejne 2 dni już tylko dzień po dniu?
Awatar użytkownika
tomasiek
Sędziwy Jeż
Sędziwy Jeż
Posty: 50
Rejestracja: 14 maja 2007, 08:18
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: GNOME
Architektura: x86
Kontakt:

Odp: Prognoza pogody w conkym

Post autor: tomasiek »

Też o tym myślałem. Jest kilka serwisów które podają pogodę z wyprzedzeniem np. http://www.pogodnie.pl lub http://www.pogodynka.pl - niestety moja znajomość "skryptowania" jest mizerna...
Dlaczego rodzice kupują dzieciom na Pierwszą Komunię komputery a nie rowery?
Awatar użytkownika
belzebubek
Piegowaty Guziec
Piegowaty Guziec
Posty: 8
Rejestracja: 25 gru 2007, 10:08
Płeć: Mężczyzna
Wersja Ubuntu: 8.04
Środowisko graficzne: GNOME

Odp: Prognoza pogody w conkym

Post autor: belzebubek »

yantar
Sędziwy Jeż
Sędziwy Jeż
Posty: 40
Rejestracja: 11 kwie 2007, 17:47
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: Xfce

Odp: Prognoza pogody w conkym

Post autor: yantar »

Mozna to tez zrobic okrezna droga ze skryptu pogodynka.sh ktory pobieracie dane z weather.com, wziasc tylko samo sciaganie przez w3m (podstawic jakis adres ktory jest interesujacy) zeby sciagnac to do pliku txt w locie go obrabiajac za pomoca systemowych textutils: cut,tr,grep i tak dalej. (kwestia poczytania mana do nich i helpow + troszke potrenowania na jakims pliku)
np u mnie.

Kod: Zaznacz cały

w3m -dump http://www.wios.rzeszow.pl/pogoda/pogoda.html | grep -A30 "Temperatura" | cut -b74- | tr -d "A-z:°:│:/|%" | tr -d [:blank:] | cat -s | tr  [:space:] ":" > /home/xxxxx/.wmWeatherReports/pogoda.txt
Sciagam raport raz na 15 minut.
W conky tez troszke zabawy i co minute odswierza z pliku (bo po co co sekunde). Nie jest to moze tak eleganckie rozwiazanie jak skrypt ale dziala;]
No i przydatne jesli mieszkamy w jakiejs miejscowosci ktora nie publikuje raportow na takich serwisach jak weather.com (albo jeszcze inaczej, po co brac pogode uaktualniana raz np na godzine, jesli ktos prowadzi w naszej miejscowosci stacje meteroologiczna ktora co chwie uaktualnia dane). Pomijam juz fakt, ze mozna wyjrzec przez okno, ale prawdziwy komputerowy twardziel tego nie zrobi ;d
"Internet bez Opery to chaos"
Awatar użytkownika
NoName_1990
Sędziwy Jeż
Sędziwy Jeż
Posty: 59
Rejestracja: 28 lut 2007, 18:01
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: Inne
Architektura: x86

Odp: Prognoza pogody w conkym

Post autor: NoName_1990 »

mogłoby być lepiej, ale mi się nie chce pisać :p

Kod: Zaznacz cały

#!/bin/bash
w3m http://www.pogodynka.pl/miasto.php?miasto=O%B6wi%EAcim > /tmp/pogoda
dzien=`date +%d`;
miesiac=`date +%m`
rok=`date +%Y`
godzina=`date +%k`
lol=$[godzina+28]; #PROGNOZA 28 GODZIN W PRZÓD xD
if [ $lol -gt 24 ]    # 20 - 24, POKAZUJEMY PROGNOZĘ NA 02:00 NASTĘPNEGO DNIA
then
    dzien=$[dzien+1];
    godzina=2;
elif [ $lol -gt 20 ]    # 16 - 20, POKAZUJEMY PROGNOZĘ NA 20:00 / 23:00 (DO WYBORU)
then
    godzina=20;
#    godzina=23;
elif [ $lol -gt 16 ]    # 12 - 16, POKAZUJEMY PROGNOZĘ NA 17:00
then
    godzina=17;
elif [ $lol -gt 12 ]    # 08 - 12, POKAZUJEMY PROGNOZĘ NA 14:00
then
    godzina=14;
elif [ $lol -gt 8 ]    # 04 - 08, POKAZUJEMY PROGNOZĘ NA 8:00 / 11:00 (DO WYBORU)
then
    godzina=8;
#    godzina=11;
elif [ $lol -gt 8 ]    # 00 - 04, POKAZUJEMY PROGNOZĘ NA 5:00
then
    godzina=5;
fi 

data="$dzien.$miesiac.$rok";
echo "Prognoza pogody na $data, na godzinę $godzina:00";
temperatura=`cat /tmp/pogoda | grep "($data)"  -A 25 | grep "$godzina:00" -m 1 | sed -e "s/.*● //; s/ (.*//" 2>/dev/null`
odczuwalna=`cat /tmp/pogoda | grep "($data)"  -A 25 | grep "$godzina:00" -m 1 | sed -e "s/.*(//; s/).*//" 2>/dev/null`
cisnienie=`cat /tmp/pogoda | grep "($data)"  -A 25 | grep "$godzina:00" -m 1 | sed -e "s/.*)//; s/hPa.*//" 2>/dev/null`
wiatr=`cat /tmp/pogoda | grep "($data)"  -A 25 | grep "$godzina:00" -m 1 | sed -e "s/.*hPa//; s/m.*//" 2>/dev/null`
stan=`cat /tmp/pogoda | grep "($data)"  -A 25 | grep "$godzina:00" -m 1 | sed -e "s/.*s//;" 2>/dev/null`
echo "Temperatura: $temperatura"
echo "Odczuwalna: $odczuwalna"
echo "Ciśnienie: $cisnienie hPa"
echo "Wiatr: $wiatr m/s"
echo "$stan"
$ ./lol2
Prognoza pogody na 19.06.2008, na godzinę 2:00
Temperatura: 13
Odczuwalna: 13.0
Ciśnienie: 986 hPa
Wiatr: 1 m/s
Bezchmurnie
EDIT:
heh... ta sama godzina :P
Awatar użytkownika
queyas
Piegowaty Guziec
Piegowaty Guziec
Posty: 23
Rejestracja: 17 sie 2007, 23:33
Płeć: Mężczyzna
Wersja Ubuntu: 8.04
Środowisko graficzne: GNOME
Kontakt:

Odp: Prognoza pogody w conkym

Post autor: queyas »

belzebubek, NoName_1990 dzięki - dokładnie o coś takiego mi chodziło :)

yantar - myślałem o czymś podobnym, ale moje umiejętności na razie są takie, że tylko udało mi się zrozumieć zasadę działania pogodynki - o samodzielnych przeróbkach na razie nie ma mowy
Awatar użytkownika
tomasiek
Sędziwy Jeż
Sędziwy Jeż
Posty: 50
Rejestracja: 14 maja 2007, 08:18
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: GNOME
Architektura: x86
Kontakt:

Odp: Prognoza pogody w conkym

Post autor: tomasiek »

@NoName_1990 - to jest "prawie" to o co chodziło... gdyby nie to że dziwnie działa.
Z tego co rozumiem, w tym skrypcie ustawiam ilość godzin o które chcę "wyprzedzić" stan pogody w tym miejscu

Kod: Zaznacz cały

lol=$[godzina+28]; #PROGNOZA 28 GODZIN W PRZÓD xD
No i zaczynają się cyrki.
Gdy ustawię na +24 otrzymuję:
Prognoza pogody na 20.06.2008, na godzinę 2:00
Temperatura: 16
Odczuwalna: 15.6
Ciśnienie: 985 hPa
Wiatr: 2 m/s
ami
i nijak ma się to do pogody na ten dzień na godz.2 -
2:00 13 (12.5) 956 hPa 2 m/s poludniowo-zachodni Pogodnie
co ciekawe - jak zmienię na +10 - nic się nie zmienia.
A gdy ustawię na +4 otrzymuję:
Prognoza pogody na 19.06.2008, na godzinę 20:00
Temperatura:
Odczuwalna:
Ciśnienie: hPa
Wiatr: m/s
czyli nic.
Nie do końca rozumiem działanie tego skryptu.... nie znam się na tym po prostu - a błądzenie po omacku raczej nie przynosi efektu
Dlaczego rodzice kupują dzieciom na Pierwszą Komunię komputery a nie rowery?
Awatar użytkownika
NoName_1990
Sędziwy Jeż
Sędziwy Jeż
Posty: 59
Rejestracja: 28 lut 2007, 18:01
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: Inne
Architektura: x86

Odp: Prognoza pogody w conkym

Post autor: NoName_1990 »

Hmmm... na szybko pisałem - pewnie roi się od baboli :p Jak będę miał czas - poprawię go troszkę :p
ciopik
Piegowaty Guziec
Piegowaty Guziec
Posty: 11
Rejestracja: 24 lip 2008, 14:39
Płeć: Mężczyzna
Wersja Ubuntu: 8.04
Środowisko graficzne: GNOME

Odp: Prognoza pogody w conkym

Post autor: ciopik »

czy komuś to działa w conky bo mi wyświetla tylko nazwy wierszy ale zadnych wartości
Temperatura:
Odczuwalna:
Ciśnienie: hPa
Wiatr: m/s
sprawdzałem i prognoza jest pobierana z internetu
Awatar użytkownika
NoName_1990
Sędziwy Jeż
Sędziwy Jeż
Posty: 59
Rejestracja: 28 lut 2007, 18:01
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: Inne
Architektura: x86

Odp: Prognoza pogody w conkym

Post autor: NoName_1990 »

No cóż... skrypt ma tą irytującą tendencję, że czasami działa a czasmai nie.... Nic dziwnego - był napisany przeze mnie, na szybko w 15 minut... xD W każdym razie... nie czuję się jeszcze dostatecznie pewnie w bashu aby brać się za jego poprawianie... :(
ciopik
Piegowaty Guziec
Piegowaty Guziec
Posty: 11
Rejestracja: 24 lip 2008, 14:39
Płeć: Mężczyzna
Wersja Ubuntu: 8.04
Środowisko graficzne: GNOME

Odp: Prognoza pogody w conkym

Post autor: ciopik »

Problem nie leży tylko po stronie skryptu (który ma małe błedy) ale głównie po stronie servisu pogodynki.
Opisze krótko na czym polega problem:
leży on po stronie formatu daty tzn.
w bashu możemy określić datę z zerami (np. 02.09.2008 ) lub bez zer - doszedłem do tego po wielu poszukiwaniach (np. 2.9.2008 )
natomiast pogodynka ma format daty w aktualnym dniu bez zer tzn. 2.9.2008 a w kolejnych dniach jest on już z zerami tzn. 02.09.2008 Jest to trochę dziwne ale jest :/

Wniosek jest krutki - albo mamy aktualna prognoze z pogodynki i omijamy wuwczas format daty, albo bierzemy pogodę z wyprzedzeniem 24 h i datę z zerami. Przy tym skrypcie pogoda będzie poprawnie wyświetlana tylko od października do grudnia w dniach 10-31
Awatar użytkownika
NoName_1990
Sędziwy Jeż
Sędziwy Jeż
Posty: 59
Rejestracja: 28 lut 2007, 18:01
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: Inne
Architektura: x86

Odp: Prognoza pogody w conkym

Post autor: NoName_1990 »

ciopik pisze:Problem nie leży tylko po stronie skryptu (który ma małe błedy) ale głównie po stronie servisu pogodynki.
Opisze krótko na czym polega problem:
leży on po stronie formatu daty tzn.
w bashu możemy określić datę z zerami (np. 02.09.2008 ) lub bez zer - doszedłem do tego po wielu poszukiwaniach (np. 2.9.2008 )
natomiast pogodynka ma format daty w aktualnym dniu bez zer tzn. 2.9.2008 a w kolejnych dniach jest on już z zerami tzn. 02.09.2008 Jest to trochę dziwne ale jest :/

Wniosek jest krutki - albo mamy aktualna prognoze z pogodynki i omijamy wuwczas format daty, albo bierzemy pogodę z wyprzedzeniem 24 h i datę z zerami. Przy tym skrypcie pogoda będzie poprawnie wyświetlana tylko od października do grudnia w dniach 10-31
Lol... właśnie coś mi nie pasowało z tymi datami xD... no wychodzi na to że mój skrypt działa przez 17.7% roku xD

A skrypt można poprawić (sprawdzenie czy data pobieranej pogody to już następny(e) dzień (dni) - i przekazanie do grep'a daty z zerami, czy też jeszcze aktualny dzień - i przekazanie daty bez zer), tak żeby pokazywał to co ma pokazywać
ODPOWIEDZ

Wróć do „Programowanie”

Kto jest online

Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 1 gość