HTML Seite in Klassenaufbau Parsen.

Danielku15

Erfahrenes Mitglied
Hi Leute.

Ich hab ein kleines Problem. Und zwar hab ich eine HTML Seite in welcher Informationen stehen. Es handelt sich dabei um ein sehr unstrukturierten Supplierplan unserer Schule. Nun möchte ich aus dieser HTML Seite die einzelnen Informationen herauslesen. Ich habe mal den Klassenaufbau, eine grafische Darstellung des Supplierplans und die HTML Seite angehängt.

Hier nochmal eine kurze Beschreibung:
Der Supplierplan besteht aus mehreren Tagen (Montag, Dienstag,...). Am diesen Tag sind mehrere Stunden (APH, AM, MELU,...) Diese Stunden können aus mehreren Unterrichtseinheiten bestehen. (1 Gruppe BIBI HAE, 2. Gruppe BIBI KAUF). Diese Unterrichtseinheiten werden dann von einem Lehrer in einem bestimmten Raum gehalten.

Wie Parse ich nun am besten aus diesem Quellcode die ensprechenden Daten. Ich möchte ein Parser-Interface anbieten um unterschiedliche HTML-Codes zu unterscheiden. Ich hab mir gedacht dass Regex da ganz praktisch wäre um die einzelnen Daten rauszufiltern. Oder gibts da noch eine bessere Möglichkeiten die Daten rauszubekommen?

gruß Daniel
 

Anhänge

  • Supplierplan.zip
    107 KB · Aufrufe: 23
Hallo, ich bin zwar noch neu in diesem Bereich aber durch meine Recherche habe ich öfters lesen können, das Regular Expressions dafür nicht so optimal sind, z.B. durch Veränderung des HTML-Outputs usw. Ich habe nun ähnliches Problem das ich aus einer Website Informationen filtern möchte und dies möglichst elegant. Es handelt sich um eine HTML-Datei daher die Frage gibt es auch HTML-Parser im .NET Framework ? Leider habe ich soetwas nicht gefunden. Ich stehe momentan auf dem Schlauch wie ich am besten an die 30 DAX-Werte dieser Seite komme: hier
Ein Kumpel meinte mit XSLT sollte das elegant zu lösen sein in Kombination mit dem .NET Framework aber ich wüsste nicht wie. Zumal XSLT eigentlich XML Dateien transformiert.
Die HTML-Datei liegt als String vor.

Wäre für Tipps dankbar :)

EDIT: Habe etwas gefunden und zwar das HtmlAgilityPacket. Einfach in das Projekt einbinden und auf gehts ;-)
 
Zuletzt bearbeitet:
Zurück