У меня есть приложение, в котором я использовал html5lib для свободного анализа html. Я использую интерфейс мини-интерфейса, потому что мне нужен настоящий API DOM, а ElementTree не подходит для того, что я делаю.Есть ли способ разобрать html с lxml, но манипулировать им с помощью мини-диска?
Вот как я это делаю:
parser = html5lib.XHTMLParser(tree=html5lib.treebuilders.getTreeBuilder('dom'))
parser.parse(html)
Однако разбор больших файлов становится узким местом производительности, и LXML разборе около 80 раз быстрее, чем html5lib (я протестированные его).
Как анализировать с помощью lxml или аналогично быстрой библиотеки с плохой html-терпимостью и манипулировать с DOM-совместимым API?
Как ElementTree не подходит для того, что вы делаете? Мой опыт в том, что API lxml лучше, чем мини-юниты. – Allen
Мне нужно вручную манипулировать текстовыми узлами, с полным контролем над их расщеплением и нормализацией. API ElementTree не обладает этой возможностью. –