Einzelnen Beitrag anzeigen

Benutzerbild von Ajintaro
Ajintaro

Registriert seit: 20. Okt 2004
Ort: Sankt Augustin
138 Beiträge
 
Delphi XE6 Starter
 
#1

DIV classes mit getElementByID auslesen

  Alt 19. Mai 2014, 13:49
Hi DP !

Ich möchte folgende, immer gleich aufgebaute HTML Struktur auslesen:

Code:
<div class="FFT_header">[B]29Apr14 15:30[/B]<span class="FFT_header_for_name">[B]Tom Jerry[/B]</span>
<br>
<span class="FFT_header_group">[B]Delphi Praxis Team[/B]</span>
</div>
<div class="fftText">
<pre>[B]Lorem Ipsum[/B]<br></pre>
</div>

<div class="FFT_header">[B]29Apr14 15:32[/B]<span class="FFT_header_for_name">[B]Eduard Junge[/B]</span>
<br>
<span class="FFT_header_group">[B]Torry Pages[/B]</span>
</div>
<div class="fftText">
<pre>[B]Lorem Ipsum 2[/B]<br></pre>
</div>
Das sind 2 Einträge von über 300. Ich möchte pro div-Block die 4 fett markierten Informationen auslesen:

das Datum,
den Namen,
die Gruppe
und den Text

Ein ähnliches Problem habe ich mit String-Funktionen gelöst, aber himitsu erwähnte den Einsatz von HTML-DOM. Ich habe einige Gehversuche damit gestartet, komme aber nicht zurecht:

Delphi-Quellcode:
var
   divbody, div_class1, div_class2, Inputs : OleVariant;
   i,j,k: Integer;
begin
  divBody := Webbrowser1.OleObject.document.getElementById('div class="FFT_header"');
  div_class1 := divBody.getElementsByTagName('div class="FFT_header"');
  for i := 1 to div_class1.length - 1 do
  begin
    div_class2 := div_class2.item(i, null).getElementsByTagName('class="FFT_header_group"');
    for j := 0 to div_class2.length - 1 do
    begin
      Inputs := div_class2.item(j, null).getElementsByTagName('input');
      for k := 0 to Inputs.length - 1 do
        memo1.Lines.add(Inputs.item(k, null).value);
    end;
  end;
end;
Wie spreche ich denn eine div class richtig an ?
Jaimy
DAoC 2.0 -> Camelot Unchained !
  Mit Zitat antworten Zitat