HTML in Java verarbeiten

HTML ist ja leider kein XML und so gibt es immer wieder Probleme, wenn man versucht eine HTML-Seite aus der realen Welt zu verarbeiten; dabei klappt es mit dem DOM in einem Browser doch ganz gut, nur ist der Browser darauf spezialisiert die realen Seiten zu parsen. In Java übernimmt dies z.B. jsoup

jsoup: Java HTML Parser versucht sämtliche Seiten zu parsen, um die Bestandteile dann mittels DOM und jquery zur Weiterverarbeitung anzubieten.

Um z.B. alle Links eines HTML-Dokuments über den DOM-Weg zu erhalten reichen die folgenden Zeile Java-Code:

Document doc = Jsoup.parse(html);
Elements links = content.getElementsByTag("a");
for (Element link : links) {
  String linkHref = link.attr("href");
  String linkText = link.text();
}

Eine weitere Möglichkeit wäre (mittels CSS/Jquery Selector):

Document doc = Jsoup.parse(html);
Elements links = doc.select("a[href]"); // a with href

Um unsauber definierte HTML-Dokumente einfach aufzuräumen kann man sich auch noch den angucken. Nach dem Aufräumen kann man über Standard-XML-Bibliotheken auf die Struktur zugreifen und muss „nichts neues“ lernen oder kann die Dokumente in die gegebene Projektstruktur einfach einbinden.


Beitrag veröffentlicht

in

,

von

Schlagwörter:

Kommentare

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert