Pogoda w delphi?

0

Witam
Wiem ze bylo duzo na ten temat, nawet google pare lat temu pokazywalo duzo wynikow a teraz to tylko Samsung Delphi i nic poza tym:/
Otóż w tym poradniku
Pobieranie parametrów meteorologicznych z danego miejsca na świecie
link do zrodla nie dziala, wiec nie moge zerknac i zobaczyc jak on to zrobil.
Chodzi o pobieranie temperatury miasta do programu. Nie mam pomysłów.. Zielono :/
Dlatego pisze, moze macie jakis przyklad lub ktos ma ten załącznik z artykułu co dałem wyżej.. nie wiem
Z gory dzieki za pomoc

0

ehh... w linku ktory podales masz w skrocie opisany "standard przekazywania danych meteorologicznych".
wystarczy pobrac te dane ze strony i przeanalizowac. wiec w czym problem? mozesz tez pobrac w postaci xml. wystarczy poszukac.
zadaj jakies konkretne pytanie, bo jak na razie to chcesz zeby ktos za Ciebie odwalil polowe roboty.
nie wiesz jak pobrac dane ze strony? to poszukaj w googlach, zapewniam ze znajdziesz w ciagu paru minut.

0

Zobacz czy twój program dorówna temu http://kxp.pl
po co pisać coś co już jest i jest dobre i działa i bardziej funkcjonalne ?

0

wiem jak pobrac html strony.
korzystam z tego
Rozdział 11
ale co dalej? Nawet gdy wyszukam dane miejsce to nie wiem jak to napisac :/
O to mi chodzi.. bawie sie juz dosyc dlugo i nie daje rady, dlatego napisalem tutaj...

P.S

proqix napisał(a)

Zobacz czy twój program dorówna temu http://kxp.pl
po co pisać coś co już jest i jest dobre i działa i bardziej funkcjonalne ?

Bądź pewien że z czasem dorówna :) Obecnie zobacz jak długo autor nie kontynuuje projektu.
Duzo problemów ludzie mają pod XP, więc ja robie pod 7, między innymi dla siebie :)
I najwazniejsze to.. Nikt nie pisze tu o kxp, wiec po co zaczynasz offtop ?

1

Ja pobieram dane pogodowe z serwisu google.
Np dla Warszawy http://www.google.com/ig/api?weather=Warszawa
Otrzymuję plik xml, z którego wyciągnięcie konkretnych informacji nie jest przecież żadnym problemem :)

<?xml version="1.0" encoding="UTF-8"?>
<xml_api_reply version="1"><weather module_id="0" tab_id="0" mobile_row="0" mobile_zipped="1" row="0" section="0"><forecast_information><city data="Warsaw, Masovian Voivodeship"/><postal_code data="Warszawa"/><latitude_e6 data=""/><longitude_e6 data=""/><forecast_date data="2012-01-21"/><current_date_time data="1970-01-01 00:00:00 +0000"/><unit_system data="SI"/></forecast_information><current_conditions><condition data="Lekki śnieżek"/><temp_f data="32"/><temp_c data="0"/><humidity data="Wilgotność: 100%"/><icon data="/ig/images/weather/flurries.gif"/><wind_condition data="Wiatr: zach. z szybkością 16 km/h"/></current_conditions><forecast_conditions><day_of_week data="sob."/><low data="0"/><high data="3"/><icon data="/ig/images/weather/fog.gif"/><condition data="Mgła"/></forecast_conditions><forecast_conditions><day_of_week data="niedz."/><low data="-1"/><high data="3"/><icon data="/ig/images/weather/chance_of_rain.gif"/><condition data="Możliwe opady deszczu"/></forecast_conditions><forecast_conditions><day_of_week data="pon."/><low data="-3"/><high data="4"/><icon data="/ig/images/weather/chance_of_rain.gif"/><condition data="Możliwe opady deszczu"/></forecast_conditions><forecast_conditions><day_of_week data="wt."/><low data="-4"/><high data="1"/><icon data="/ig/images/weather/mostly_sunny.gif"/><condition data="Możliwe przejaśnienia"/></forecast_conditions></weather></xml_api_reply>

Na przykład temperaturę można na szybko odczytać tak

var
  xml:string;//z plikiem xml
  p,k:Integer;
  id:string;
  temp:string;
//...
  temp:='brak inf. o temp.';//wstępnie
  id:='temp_c data="';
  p:=Pos(id,xml);
  if p>0 then
  begin
    Inc(p,Length(id));
    id:='"';
    k:=PosEx(id,xml,p);
    if k>0 then
      temp:=Copy(xml,p,k-p);
  end;
0

No nie powiem sposób masz fajny, i nie zbyt trudny.
Dopisałem sobie funkcje bo krzyczal o PosEx

Function PosEx(SubStr, Str: String; PosStart: Integer): Integer;
Begin
  if Pos(SubStr, Copy(Str, PosStart, Length(Str)-PosStart+1)) = 0 Then
    Result := 0 Else
    Result := Pos(SubStr, Copy(Str, PosStart, Length(Str)-PosStart+1))+PosStart-1;
End;

Działa :)) Dzieki za pomoc :)

Powiesz mi jeszcze jak wychaczyłeś tego linka?
.....ig/api?weather=Warszawa
szukam przez Firebug i nigdzie nie widze jakiegos odnosnika do tego miejsca :|
bo np jak miejscowosc jest ze spacją to juz maly problem,

1

Próbuję sobie przypomnieć ale nic z tego.
To mógł być jakiś gadżet z iGoogle albo jakiś dodatek pogodowy do Chrome.

no na iGoogle szukam w htmlu i nic z tego :/ lub zle to robie.

Również gdy nazwa miasta zawiera polskie znaki to już sobie nie radzi.
Jakbyś sobie przypomniał nazwe gadżetu to daj znac. Ja poszukam teraz w tym co pisałes

@Edit
Do GoogleChrome jest dodatek Pogoda, prosto od google no w nim tez szukam i ten sam kod co na stronie

@Edit2
Znalazłem http://www.google.com/ig/api?weather={input}&hl={language}
ale co z tego bo i tak jak wpisze np. Gostyń w miejsce {input} to mi nic nie pokaze przez ten polski znak, lub jakby spacja byla :/
Nie wiem gdzie szukac

0

Przetwarzanie pliku XML za pomocą PosEx i przetwarzania stringów ? Toż to era kamienia łupanego. A gdziez się podział XPath.

1 użytkowników online, w tym zalogowanych: 0, gości: 1