Empfohlene Methode zum Erhalten von Charakterpositionen aller HTML -Tags in einem Dokument

StackOverflow https://stackoverflow.com/questions/9339427

  •  27-10-2019
  •  | 
  •  

Frage

Also regelmäßige Ausdrücke kann Nebenwirkungen haben. Was ist dann die bevorzugte Methode, um die Start- und Endcharakterpositionen aller HTML -Tags in einem Dokument zu erhalten? Analyse von Bibliotheken wie JSOUP und Nekohtml scheinen diese Informationen nicht zu liefern Xmllocator Es scheint nicht zu gelten, da es nur die liefert Ende des aktuellen Dokumentereignisses.

Ich interessiere mich nicht für den Typ oder den Namen des Tags, eines seiner Attribute oder an etwas aus dem Text. Ich möchte nur wissen, wo sie anfangen und wo sie enden.

Für die Zwecke dieser Frage kann angenommen werden, dass die Quelle HTML gültig ist.

War es hilfreich?

Lösung

Ich war selbst neugierig, also fand ich diesen Parser: http://jericho.htmlparser.net/

public void testJericho() throws IOException{

    Source source=new Source(new URL("http://example.com/"));
    List<Element> elementList=source.getAllElements();
    for (Element element : elementList) {
        printElement(element);
    }

}

public void printElement(Element element) {
    List<Element> children = element.getChildElements();
    for(Element child: children) 
        printElement(child);

    System.out.println(element.getName() + " start: " + element.getBegin());
    System.out.println(element.getName() + " end: " + element.getEnd());        
}
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top