Функция для преобразования HTML в валидный XML
Задача следующая. Я получаю тело html страницы используя HttpWebRequest и HttpWebResponse. Затем я хочу преобразовать полученный код в валидный XML для последующего обращения к нему с помощью XPATH (здесь http://forum.vingrad.ru/forum/topic-316073.html объяснял свои проблемы в данном вопросе).
Таким образом, мне нужна функция, которая на входе получает HTML код страницы, а возвращает валидный XML, к которому я смогу обращаться с помощью XPATH. Обращаться к ней буду с помощью следующего кода (как пример):
validatedHtmlText=TranslateToValidXML(htmlText);
XmlDocument doc = new XmlDocument();
doc.LoadXml(validatedHtmlText);
XmlNodeList nodeList;
XmlElement root = doc.DocumentElement;
nodeList = root.SelectNodes(XPATHString);
Пример страницы, на которой можно потестировать:
Когда я сейчас напрямую подгружаю htmlText в LoadXml, при обработке получаю исключение, которое ругается, что:
"--" не является допустимым маркером ……...
Желательно создать решение на базе HTML Agility Pack. За эту небольшую функцию готов заплатить 5$ (оплата Webmoney). Уточню, что функция должна быть ХОРОШО ДОКУМЕНТИРОВАНА.