@sultan19
Frontend

Кто то знает хороший метериал по парсерам?

Подскажите хорошие материал для изучения AngleSharp или других современных библиотек для парсинга на C#.
  • Вопрос задан
  • 153 просмотра
Пригласить эксперта
Ответы на вопрос 2
@DanyaMo
C#/.Net developer
AngeSharp хорошая библиотека, но не поддерживает XPath запросы. Имхо, для парсинга гораздо эффективнее использовать XPath и соответственно библиотеки которые его поддерживают, например HtmlAgilityPack или встроенные средства Selenium/Puppeteer.
Примеры XPath запросов, которые очень сложно или невозможно написать на CSS:

Найти элемент A, который содержит текст "Login" или "Войти":
//div[@class='header__login-head']/a[text()='Login' or text()='Войти']

Найти элемент DIV, у которого значение атрибута class содержит подстроку "line-header__filter-text" и текст "Планшеты" и вернуть прародителя этого элемента:
//div[contains(@class, 'line-header__filter-text') and text()='Планшеты']/../..

Возможность искать по тексту содержимого элемента или атрибутов и комбинировать условия при помощи логических операторов очень мощная вещь. И это лишь малая часть. В AngleSharp пришлось бы писать более простой CSS запрос, а дальше искать DOM элемент в коде C# при помощи навигации по DOM дереву.

Эти запросы будут работать одинаково (почти) в любой библиотеке которая поддерживает XPath, а так же в Chrome Dev Tools в строке поиска на вкладке Elemenets (там же удобно и отлаживать). Так же есть различные плагины для отладки или построения запросов в Chrome или Firefox.

Туториал по XPATH
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы