[DELPHI] TWebBrowser - czytanie źródła

0

Odpalam sobie stronke z netu w WebBrowser i chciałbym wczytać jej żródło do np komponentu memo. Żeby było to źródło aktualnie przeglądanej strony - bo powiedzmy że kod zmienia się przy każdorazowym otwarciu tej strony w necie.

Dzieki za pomoc.

0

dzieki ale mam to i

/ You need a TMemo, a TButton und a NMHTTP
// Man braucht ein TMemo, einen TButton und eine TNMHTTP

procedure TForm1.Button1Click(Sender: TObject);
begin
NMHTTP1.Get('www.swissdelphicenter.ch');
memo1.Text := NMHTTP1.Body
end;

wywala błąd pluje sie o NMHTTP1 co to jest za komponent gdzie go szukac??

0

Komponent z pakietu FastNet. Jak nie masz to możesz zastosować komponenty Indy (a dokładniej TIdHTTP) i pobuierać kod strony przez TIdHTTP.Get().

0

ale jeżeli pobierzesz przez IdHTTP.Get to to będzie bez sensu bo jeśli strona jest już wyświetlona w WebBrowser to jest ona pobrana i wystarczy wyświetlić jej źródło a przez IdHTTP ściągasz stronkę po raz drugi

0

no wiec jak wyswietlic zrodlo z pobranej i wyswietlonej w Web browser strony??
A poza tym jeszcze jedno pytanko przy okazji jak najskuteczniej wyszukać interesujący mnie ciąg znaków w komponencie memo jesli ma on np 500 linijek??

0

a po co webbrowser?
wrzucasz idHTTP i tym sciagasz strone na dysk, potem robisz z nia co chcesz (memo, lub wyszkuiwanie)

0

Lofix:

Żeby było to źródło aktualnie przeglądanej strony

0

ja bym tu HTTPGet uzyl. sciagam stronke - a pozniej do memo

0

ort!:

Lofix:

Żeby było to źródło aktualnie przeglądanej strony

Polecenie Get pobiera aktualna strone (czyli pewnie wywoluje jakis skrypt PHP, ktory by cos zmienial)

(polecam RFC)

0

Było coś takiego na forum Eksperta
http://www.ks-ekspert.pl/forum/search.asp?FORUM_ID=8 ostrzegam modul szukania sie zarąbiście długo ładuje, a to za sprawą tego, że możesz z listy użytkowników wybrać czyje posty przeszukiwać... I musi załadować listę z 9510 elementami :P

0

ort!:

Lofix:

Żeby było to źródło aktualnie przeglądanej strony

Polecenie Get pobiera aktualna strone (czyli pewnie wywoluje jakis skrypt PHP, ktory by cos zmienial)
(polecam RFC)
Lofix on chce chyba w memo wyswietlić źródło tej strony którą ma w TWebBrowser, tak mnie się wydaje przynajmniej...

0

Hm, jeżeli dobrze rozumiem wystarczy użyć funkcji opisanej w jednym z artykułów.
(http://4programmers.net/article.php/id=467)
Mianowicie:

function GetHtml(WebBrowser : TWebBrowser) : string;
begin
Result:=WebBrowser.OleObject.Document.documentElement.innerHTML;
end;

Aby obsługiwać aktualnie wyświetlaną stronę używamy:

procedure TForm1.WebBrowser1DocumentComplete(ASender: TObject;
  const pDisp: IDispatch; var URL: OleVariant);
begin
   memo1.Lines.Append(GetHtml(WebBrowser1));
end;

To chyba to...

0

Można jak masz memo i WebBrowser-a to wstaw se Timera i w nim wpisz <ort>po prostu</ort> </delphi> Memo1.text := WebBrowser1.LocationURL i załatwione a teraz ni pomóżcie już post mam uruchomiony

0

Można jak masz memo i WebBrowser-a to wstaw se Timera i w nim wpisz ort! Memo1.text := WebBrowser1.LocationURL i załatwione a teraz ni pomóżcie już post mam uruchomiony

Toć chyba WebBrowser ma zdarzenia jakieś..

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