J'ai une application où j'utilise html5lib pour analyser libéralement html. J'utilise l'interface minidom, car j'ai besoin d'une API DOM réelle et ElementTree n'est pas approprié pour ce que je fais.Existe-t-il un moyen d'analyser html avec lxml, mais de le manipuler avec minidom?
Voilà comment je fais ceci:
parser = html5lib.XHTMLParser(tree=html5lib.treebuilders.getTreeBuilder('dom'))
parser.parse(html)
Cependant, l'analyse des fichiers énormes devient un goulot d'étranglement, et l'analyse syntaxique lxml est d'environ 80 fois plus rapide que html5lib (je benchmarkée il).
Comment est-ce que j'analyse avec lxml ou une bibliothèque tolérant le mauvais-html rapidement semblable, et manipule avec une API compatible de DOM?
Comment ElementTree n'est-il pas adapté à ce que vous faites? Mon expérience est que l'API de lxml est meilleure que celle de minidom dans tous les sens. – Allen
J'ai besoin de manipuler manuellement les nœuds de texte, avec un contrôle total sur leur division et leur normalisation. L'API ElementTree n'a pas cette capacité. –