![]() |
Webbrowser Quellcode auslesen
Hallo an alle
Habe ein Problem ich möchte einen Webbrowser den Quellcode kompl. auslesen. Mit innerHTML oder OuterHMTL hab ich das schon probiert bekomme aber dabei nur den Body und nicht das <DOC> Hab hier auch schon einiges probiert aber hab das Problem bei den hilfen ich bekomme den Source dann nicht als Cleartext in einem Memo angezeigt Wer hilft mir |
Re: Webbrowser Quellcode auslesen
Hi Digielm,
wenn ich dich richtig verstanden habe, dann versuchst du mit dem Webbrowser den Quelltext in ein Memo zu lesen!? Versuchs mal hiermit:
Delphi-Quellcode:
function WB_GetHTMLCode(WebBrowser: TWebBrowser; ACode: TStrings): Boolean;
var ps: IPersistStreamInit; ss: TStringStream; sa: IStream; s: string; begin ps := WebBrowser.Document as IPersistStreamInit; s := ''; ss := TStringStream.Create(s); try sa := TStreamAdapter.Create(ss, soReference) as IStream; Result := Succeeded(ps.Save(sa, True)); if Result then ACode.Add(ss.Datastring); finally ss.Free; end; end;
Delphi-Quellcode:
So geht's bei mir...
procedure TForm1.Button1Click(Sender: TObject);
begin WB_GetHTMLCode(Webbrowser1, Memo1.Lines); end; Viel Spaß damit! Gruß! |
Re: Webbrowser Quellcode auslesen
hab ich schon probiert bekomme aber im memo nur yq> angezeigt
|
Re: Webbrowser Quellcode auslesen
Hallo,
vor der Zuweisung an die StringList musst du den Text noch von Unicode nach Ansi umwandeln. Hier noch ein Link zum Thema: ![]() Grüße vom marabu |
Re: Webbrowser Quellcode auslesen
hab mit dem Link nicht wirklich was anfangen können. wie wandel ich das denn dann um ??
|
Re: Webbrowser Quellcode auslesen
Hallo,
je nachdem wie der Server die Seite im HTTP-Header ankündigt, musst du WideString() oder Utf8ToAnsi() auf ss.DataString anwenden. Freundliche Grüße |
Re: Webbrowser Quellcode auslesen
klappt leider immernoch nicht.
Wenn ich den Inhalt nach dem Link in eine Datei sprich TXT exportiere klappt es. Komme da nicht so ganz mit warum das eine klappt und nicht das andere. |
Re: Webbrowser Quellcode auslesen
Delphi-Quellcode:
Das haste auch schon probiert?
function GetSource: String;
begin Result := WebBrowser.OleObject.Document.Body.InnerHtml; end; |
Re: Webbrowser Quellcode auslesen
Das reicht mir nicht brauche das ganze dokument
Aber mal ne andere Frage ich hab da richtig probleme Sorry leute versuche mit dem DIHtmlParser das zu machen. Wenn ich das Demo aufrufe klappt das super. Nur wie kiege ich das dann hin wenn ich den Webbrowserinhalt über einen String o.ä. übertragen will. Ich hab ein UTF16LE text der konvertiert werden muß Ich nutze Delphi 5 |
Re: Webbrowser Quellcode auslesen
Wenn ich mal den Code von Texty mit dem Tipp von marabu kombiniere, klappt es eigentlich recht gut.
Delphi-Quellcode:
if Result then ACode.Add(WideString(@ss.DataString[1]));
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:24 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz