Задать вопрос
@EshkinKat

Почему игнорируются элементы URL?

Есть ссылка вида http://toster.ru/#p2, страница по которой отличается от страницы по ссылке http://toster.ru/
При получении исходника страницы для последующей обработки получается исходник страницы http://toster.ru/, как будто #p2 игнорируется.
Исходник берется так:
string htmlCode;
using (WebClient client = new WebClient())
                {
                    htmlCode = client.DownloadString("http://toster.ru/#p2");
                }

Как избежать обрезки URL?
  • Вопрос задан
  • 2575 просмотров
Подписаться 2 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • OTUS
    C# Developer. Professional
    6 месяцев
    Далее
  • Ulearn.me
    Основы программирования на примере C#. Часть 1
    1 неделя
    Далее
  • Ulearn.me
    Основы программирования на примере C#. Часть 2
    1 неделя
    Далее
Решения вопроса 1
Monnoroch
@Monnoroch
URL Hash не учитывается сервером. Разное содержание может быть только блягодаря js, то есть, после скачивания, надо как-то сэмулировать действия юзера, которые привели к изменению hash и выполнить соответствующий js.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
Вам нужно использовать другой клиент, допустим стандартный c# элемент webbrowser и после его загрузки получать html из DOM document'а. Он отработает JS.
Ответ написан
Комментировать
@EshkinKat Автор вопроса
А по-другому никак? Мне надо загружать страницу каждые несколько секунд и парсить ее. Как-то некошерно рассеивать вычислительные ресурсы на перерисовку и компоновку страницы JS'ом, особенно когда мне надо только то что там уже есть в исходнике.
Или вы о том что там AJAX'ом подгружается содержимое форума? Это какой-то быдлокодинг уже. Хотя может так и есть. Страницы в Steam'е тяжелые.
Ответ написан
Ваш ответ на вопрос

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

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