Разбор HTML-фрагментов - PullRequest
       8

Разбор HTML-фрагментов

3 голосов
/ 30 октября 2008

Как лучше всего разбирать фрагменты HTML в C #?

Для контекста я унаследовал приложение, которое использует большое количество составных элементов управления, и это хорошо, но большая часть элементов управления визуализируется с использованием длинной последовательности буквенных элементов управления, что довольно страшно. Я пытаюсь внедрить приложение в модульные тесты, и я хочу, чтобы эти элементы управления тестировались, чтобы выяснить, генерируют ли они правильно сформированный HTML, и в решении «мечты» проверить этот HTML.

Ответы [ 4 ]

3 голосов
/ 30 октября 2008

Посмотрите на пакет HTMLAgility . Он очень совместим с классом .NET XmlDocument, но гораздо более щадителен для HTML, который не является чистым / действительным XHTML.

1 голос
/ 30 октября 2008

Если HTML соответствует XHTML, вы можете использовать встроенное пространство имен System.Xml.

1 голос
/ 30 октября 2008

Я использовал SGMLReader , чтобы создать действительный документ XML из HTML, а затем проанализировать то, что требуется с помощью XPath или в другом формате с помощью XSLT. .

0 голосов
/ 30 октября 2008

Вы также можете посмотреть в HTML Tidy для анализа / очистки HTML. Я не думаю, что они имеют конкретные библиотеки .NET, но вы можете запустить двоичный файл из командной строки или IKVM библиотеки Java.

...