[Delphi] pobranie informacji ze strony inetu

0

Może ktoś wie jak pobrac z i-netu(z zadanej strony) dane(czyli po prostu tekst ze strony) żeby można było je wykorzystać w programie - np chcę pobrać kursy walut i wyświetlić je w poszczególnych 'label'ach' 'tedit'ach' , memo czy też cokolwiek innego

0

Nie powiem ze to bedzie proste.
ja bym sciagał strone na dysk i przeszukiwal w niej tekst w poszukiwankiu mnie interesujacego..no nie wiem

0

Uzyj komponentu HTTPget

0

wkur//i@ją mnie juz takie wypowiedzi! hmm a wiesz moze jak walczyc delphi?

0

przez PHP - no problem ;) tak jak już wspomniano THTTPGet i do roboty :P !!!

[cya]

0

Może ktoś wie jak pobrac z i-netu(z zadanej strony) dane(czyli po prostu tekst ze strony) żeby można było je wykorzystać w programie - np chcę pobrać kursy walut i wyświetlić je w poszczególnych 'label'ach' 'tedit'ach' , memo czy też cokolwiek innego

Powiedzmy że chcesz wyświetlić kod źródłowy fikcyjnej strony:
www.waluty.pl/katalog_z_walutami/waluty.html, no więc
Wstawiasz na formę ClientSocket , Button i Memo.
No i dajesz taki kod:

procedure TForm1.Button1Click(Sender: TObject);
begin
ClientSocket1.Host := 'www.waluty.pl';
ClientSocket1.Port := 80;
ClientSocket1.Active := true;
end;

procedure TForm1.ClientSocket1Connect(Sender: TObject;
Socket: TCustomWinSocket);
begin
Socket.SendText('GET /katalog_z_walutami/waluty.html HTTP/1.1' + #13#10 +
'Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, /' + #13#10 +
'Accept-Language: pl' + #13#10 +
'Accept-Encoding: gzip, deflate' + #13#10 +
'User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)' + #13#10 +
'Host: www.waluty.pl' + #13#10 +
'Connection: Keep-Alive' + #13#10#13#10);
end;

procedure TForm1.ClientSocket1Read(Sender: TObject;
Socket: TCustomWinSocket);
begin
Memo1.Text := Socket.ReceiveText;
end;

No i masz w Memo kod źródłowy strony :)
Te wszystki nagłówki to niepotrzebne, wystarczy pierwsza linijka z GET
i podwojona sekwencjia znaków końca lini na końcu, ale czasmi przydaje
się ich więcej np. przy bramkach sms :)

0

No i zapomniałem dodać że jeśli chcesz z tego kodu
wyciągnąć interesujące cię informacjie to wstawiasz
to do zmiennej i operacjie na stringach się kłaniają :)

0

Piechnat: co do tego kodu, to nie jestem pewny, ale raczej nie zadziała z użyciem funkcji sendtext, trzeba chyba użyć sendbuff i receivebuff :)

0

Piechnat: co do tego kodu, to nie jestem pewny, ale raczej nie zadziała z użyciem funkcji sendtext, trzeba chyba użyć sendbuff i receivebuff :)

hmmm.... pisałem już kilka programów opartych o protokoły pop3 smtp http i działało mi z sendtext a powyższy przykład przed wklejeniem przetestowałem na Apachu na localhost'cie, a swoją drogą to jaka jest różnica w wysyłaniu 5 znaków przy pomocy sendtext a array of char długości 5 znaków przez sendbuff ?

hmmm... ciekawi mnie to od dawna :)

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