AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi InnerText aus TWebBrowser in Listbox
Thema durchsuchen
Ansicht
Themen-Optionen

InnerText aus TWebBrowser in Listbox

Ein Thema von fLeTCHeR · begonnen am 10. Jul 2006 · letzter Beitrag vom 13. Jul 2006
Antwort Antwort
fLeTCHeR

Registriert seit: 9. Mär 2006
32 Beiträge
 
#1

InnerText aus TWebBrowser in Listbox

  Alt 10. Jul 2006, 12:20
hallo freaks

ich habe ein kleines Problem. Ich möchte aus einer HTML- Datei den innerText auslesen und in eine Listbox schreiben. Dabei muss jeder gefundene innerText in eine eigene Zeile der Lisbox geschrieben werden. Um den innerText in eine Memo zuschreiben, verwende ich folgenden Code.

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
  IDoc: IHTMLDocument2;
  Strl: TStringList;
  sHTMLFile: string;
  v: Variant;
  Links: IHTMLElementCollection;
  i: Integer;
  Link: IHTMLAnchorElement;
begin
  if OpenDialog1.Execute then
  begin
    sHTMLFile := OpenDialog1.FileName;
    Strl := TStringList.Create;
    try
      Strl.LoadFromFile(sHTMLFile);
      Idoc := CreateComObject(Class_HTMLDOcument) as IHTMLDocument2;
      try
        IDoc.designMode := 'on';
        while IDoc.readyState <> 'completedo
          Application.ProcessMessages;
        v := VarArrayCreate([0, 0], VarVariant);
        v[0] := Strl.Text;
        IDoc.Write(PSafeArray(System.TVarData(v).VArray));
        IDoc.designMode := 'off';
        while IDoc.readyState <> 'completedo
          Application.ProcessMessages;
        Memo1.Lines.Text := IDoc.body.innerText;
      finally
        IDoc := nil;
      end;
    finally
      Strl.Free;
    end;
  end;
end;
Leider blick ich bei diesem Code (--> www.SwissDelphiCenter.ch) nich zu richtig durch und krieg es nicht hin den Code umzuändern. Vielleicht kann mir jemand von Euch helfen.

Vielen Dank im voraus

mfg fleTCHeR
  Mit Zitat antworten Zitat
fLeTCHeR

Registriert seit: 9. Mär 2006
32 Beiträge
 
#2

Re: InnerText aus TWebBrowser in Listbox

  Alt 12. Jul 2006, 08:56
i dont like push, sorry. aber hat niemand eine Idee wie man das lösen könnte.

grüße fLeTCHeR
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#3

Re: InnerText aus TWebBrowser in Listbox

  Alt 12. Jul 2006, 09:28
Hallo Fletcher,

wenn ich den gezeigten Code ignoriere und nur den Titel deines Themas berücksichtige, dann suchst du das hier:

Delphi-Quellcode:
with WebBrowser.Document as IHTMLDocument2 do
  ListBox.Lines.Add(body.innerText);
Ansonsten musst du dein Problem etwas genauer erklären.

Grüße vom marabu
  Mit Zitat antworten Zitat
fLeTCHeR

Registriert seit: 9. Mär 2006
32 Beiträge
 
#4

Re: InnerText aus TWebBrowser in Listbox

  Alt 12. Jul 2006, 18:45
Delphi-Quellcode:
with WebBrowser.Document as IHTMLDocument2 do
  ListBox.[b]Items[/b].Add(body.innerText);
Tippfehler


Soweit war ich auch schon. Das Problem ist aber, dass der dann den gesamten InnerText in eine Zeile schreibt. Ich hätte es gerne, das jeder gefundene InnerText in eine eigene Zeile geschrieben wird. Gibt es eine Möglichkeit das HTML Doc Zeilenweise zu durchlaufen? So das ich jede Zeile einzeln betrachten kann?

Um was es mir geht:

Ich will in einem nicht manipulierbaren HTML Document nach Eingaben, die in einer Tabelle geschrieben stehen, suchen.

Viele Grüße

fLeTCHeR
  Mit Zitat antworten Zitat
Benutzerbild von chaosben
chaosben

Registriert seit: 27. Apr 2005
Ort: Görlitz
1.358 Beiträge
 
Delphi XE2 Professional
 
#5

Re: InnerText aus TWebBrowser in Listbox

  Alt 13. Jul 2006, 06:22
Mir scheint, du willst jedes Element des Dokuments einzeln betrachten.
Wenn du das willst, dann sieh dir mal die Methoden von IHTMLDomNode an. Mit diesen kannst du durch den Baum itterieren und dir einzelne Knoten-Inhalte suchen. In der Regel kann man dann ein IHTMLDomNode als IHTMLElement casten um an den InnerText zu kommen.
Benjamin Schwarze
If I have seen further it is by standing on the shoulders of Giants. (Isaac Newton)
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:12 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz