skrypt: pogoda z AccuWeather

Potrzebujesz pomocy z C, C++, perl, python, itp.
n07ba01
Posty: 3
Rejestracja: 21 stycznia 2014, 16:50

skrypt: pogoda z AccuWeather

Post autor: n07ba01 »

Witam wszystkich,

Jest sobie taki skrypt:

Kod: Zaznacz cały

curl -s  "http://rss.accuweather.com/rss/liveweather_rss.asp?metric=1&locCode=EUR|PL|PL007|WARSZAWA|"  | sed -n '/Currently:/ s/.*: \(.*\): \([0-9]*\)\([CF]\).*/\2°\3, \1/p'
Wycina on ten fragment strony, który mówi o aktualnej pogodzie. Działa. Prawie...

Nie działa (=wyświetla nic) w przypadku temperatury ujemnej. Potrzebuję pomocy, co zmienić, żeby skrypt wyświetał poprawnie warunki pogodowe także, kiedy jest mróz?
Awatar użytkownika
kodama
Junior Member
Posty: 633
Rejestracja: 23 maja 2010, 22:30
Lokalizacja: Poznań

Post autor: kodama »

Wiem, że to mniej eleganckie, ale na szybko bym sobie zrobił tak

Kod: Zaznacz cały

curl -s  "http://rss.accuweather.com/rss/liveweather_rss.asp?metric=1&locCode=EUR|PL|PL007|WARSZAWA|" | sed -e 's/<[^>]*>//g;s/ //g' | grep "Currently:" | cut -d : -f3
A później w wolnej chwili przerobiłbym tego seda ;]


Ej, dobra, ale banał:

Kod: Zaznacz cały

curl -s  "http://rss.accuweather.com/rss/liveweather_rss.asp?metric=1&locCode=EUR|PL|PL007|WARSZAWA|"  | sed -n '/Currently:/ s/.*: \(.*\): \(.[0-9]*\)\([CF]\).*/\2°\3, \1/p'
jedna kropeczka - przed nawiasem kwadratowym [0-9] :]
n07ba01
Posty: 3
Rejestracja: 21 stycznia 2014, 16:50

Post autor: n07ba01 »

Jest prawie dobrze. Idealnie byłoby, gdyby zamiast -8C wyświetlane było: Mostly Cloudy: -8C, czyli wszystko pomiędzy <title> a </title> bez "Currently: ". Pomożecie? :)
Awatar użytkownika
kodama
Junior Member
Posty: 633
Rejestracja: 23 maja 2010, 22:30
Lokalizacja: Poznań

Post autor: kodama »

Kod: Zaznacz cały

curl -s  "http://rss.accuweather.com/rss/liveweather_rss.asp?metric=1&locCode=EUR|PL|PL007|WARSZAWA|"  | sed -n '/Currently:/ s/.*: \(.*\): \(.[0-9]*\)\([CF]\).*/\1\: \2°\3/p'
n07ba01
Posty: 3
Rejestracja: 21 stycznia 2014, 16:50

Post autor: n07ba01 »

Super! Podziękował. Jedyne, jak mogę się odwdzięczyć, to jakby ktoś tego skryptu potrzebował, to będzie pomocne: http://pastebin.com/dbtemx5F :)
ODPOWIEDZ