Решено: Как отпарсить HTML страницу на C#?

Приветствую всех, сегодня я покажу как можно с помощью регулярных выражений отпарсить HTML страницу и получить с нее все ссылки.

Как видите код писался на WinForm использовался компонент richTextBox и button. Первая часть когда у нас делает запрос и по строчно считывает все строки страници. Однако я хочу заострить внимание именно на второй части кода, регулярном выражении.

В самой первой строчке кода мы создали шаблон поиска, начало которого начинается с href=» далее у нас в круглых скобках идет внутри шаблонная переменная под названием ссылка там и будет находится наш найденный линк. После скобок идет символ на который должна заканчиваться строка, это может быть кавычка или > тут надо смотреть саму страницу. Далее мы получаем коллекцию всех найденных ссылок с сайта и поочередно в цикле переберем их.

К сожалению сам шаблон не универсален, потому я приложу еще пару вариаций его, без лишнего кода.

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

Таким образом мы смогли разобраться как отпарсить сайт и найти на нем ссылки и самое главное, что нам не пришлось использовать сторонние библиотеки, а лишь возможности C#.

Обновлено: 06.06.2018 — 17:10

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.