@roflanPominki

Может ли html код который приходит при запросе менять формат?

Я вообще не разбираюсь в парсинге, я написал код который по идее получает весь html код с страницы по url, и в нем я хочу найти содержимое тега a с определенным классом.
using System.Net;
using System.Text.RegularExpressions;

WebClient client = new WebClient();
string html = client.DownloadString("https://www.starbucks.com/menu");

Regex regex = new Regex("<a.*?class=\"block linkOverlay__primary tile___1wb3i\".*?>.*?</a>", RegexOptions.IgnoreCase);
MatchCollection matches = regex.Matches(html);

foreach (Match match in matches)
{
    Console.WriteLine(match.Value);
}
  • Вопрос задан
  • 179 просмотров
Пригласить эксперта
Ответы на вопрос 1
Stalker_RED
@Stalker_RED
я вообще не понимаю что я должен сделать

1. скачать страницу через curl или wget
2. открыть в текстовом редакторе
3. проверить, есть ли там интересующая вас информация.

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

Если нужной информации нет, а есть только какие-то скрипты, то значит контент грузится скриптами. Все пропало, тащите selenium или headless chrome.

Либо третий путь - смотрите в консоли хрома ОТКУДА эти скрипты тащат нужную инфу, и скачивайте напрямую нужные фрагменты страниц, или json-ы или что там у них (если там не огорожено каким-то ключами, конечно).
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы