У меня большая коллекция HTML-страниц с ошибками. Очень распространенная ошибка - это элементы списка, у которых нет родительского тега. Например:
<p>blah blah</p>
<li>item 1</li>
<li>item 2</li>
<p>more blah blah</p>
Я использую HTMLAgilityPack, но не могу найти простой подход для выявления и исправления этих ошибок.
HtmlDocument html = new HtmlDocument
{
OptionFixNestedTags = true, //doesn't fix it
OptionAutoCloseOnEnd = true
};
html.LoadHtml(source);
var parseErrors = html.ParseErrors;
//doesn't find any errors.
Я знаю, что могу написать процедуру для перебора всех узлов и поиска узлов li, у которых нет родительского узла типа ul или ol, затем найти все последующие узлы li и, наконец, обернуть их тегом ul, но я не могу поверить, что у меня первая такая проблема.
Это недостаток HtmlAgilityPack или я что-то упустил?