Как мне использовать HTML Agility Pack ?
Мой документ XHTML не полностью действителен. Вот почему я хотел использовать это. Как мне использовать это в моем проекте? Мой проект на C #.
c#
html
html-agility-pack
Carla
источник
источник
var body = CQ.CreateFromFile(filePath)["body"]
.Ответы:
Сначала установите пакет nuget HTMLAgilityPack в свой проект.
Тогда, как пример:
(Примечание: этот код является только примером и не обязательно лучшим / единственным подходом. Не используйте его вслепую в своем приложении.)
HtmlDocument.Load()
Метод также принимает поток , который является очень полезным для интеграции с другими потоковыми ориентированными классами в рамках .NET. ХотяHtmlEntity.DeEntitize()
это еще один полезный метод для правильной обработки HTML-объектов. (спасибо Мэтью)HtmlDocument
иHtmlNode
те классы, которые вы будете использовать больше всего. Как и анализатор XML, он предоставляет методы selectSingleNode и selectNodes, которые принимают выражения XPath.Обратите внимание на
HtmlDocument.Option??????
логические свойства. Эти управления , какLoad
иLoadXML
методы будут обрабатывать ваш HTML / XHTML.Существует также скомпилированный файл справки с именем HtmlAgilityPack.chm, в котором есть полная ссылка для каждого из объектов. Обычно это находится в базовой папке решения.
источник
SelectSingleNode()
кажется, был удален некоторое время назадЯ не знаю, поможет ли это вам, но я написал пару статей, которые знакомят с основами.
Следующая статья завершена на 95%, мне просто нужно написать объяснения последних нескольких частей кода, которые я написал. Если вы заинтересованы, то я постараюсь не забыть опубликовать здесь, когда я опубликую его.
источник
HtmlAgilityPack использует синтаксис XPath, и хотя многие утверждают, что он плохо документирован, у меня не возникло проблем с его использованием с помощью этой документации XPath: https://www.w3schools.com/xml/xpath_syntax.asp
Разобрать
Я сделал это:
источник
XPath
стандарта. Сначала нужно изучить этот стандарт, и после этого все будет легко.Основной HTMLAgilityPack связанный код выглядит следующим образом
источник
источник
Начало работы - HTML Agility Pack
источник
попробуй это
источник