Méthode recommandée pour obtenir des positions de caractère de toutes les balises HTML dans un document

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

  •  27-10-2019
  •  | 
  •  

Question

peuvent avoir des effets secondaires . Qu'est-ce donc, est la méthode préférée d'obtenir les positions de début et de caractère de fin de toutes les balises HTML dans un document? bibliothèques parsing telles que Jsoup et NekoHTML ne semblent pas fournir ces informations, même XMLLocator ne semble pas appliquer, car il ne fournit que la end de l'événement de document.

Je ne suis pas intéressé par le type ou le nom de la balise, l'un de ses attributs, ou quoi que ce soit de décapage du texte. Je veux juste savoir où ils commencent et où ils finissent.

Aux fins de cette question, on peut supposer que le code source HTML est valide.

Était-ce utile?

La solution

J'étais moi-même curieux, donc j'ai trouvé cet analyseur: 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());        
}
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top