Источник HTML отличается в Webclent и WebBrowser

0

Я создаю приложение С# 4.0 для загрузки содержимого веб-страницы с помощью веб-клиента.

Я просматриваю содержимое загрузки на веб-клиенте С#, немного отличающемся от браузера

содержание. (Я указываю тот же URL-адрес в браузере (Mozilla Firefox) и мою функцию веб-клиента.

веб-страница показывает содержимое правильно, но мой веб-клиент DownloadString возвращает другое

HTML.) См. Ниже мой ответ веб-клиента.

Вебклиент загружен html

<!DOCTYPE html>
<head>
<META NAME="ROBOTS" CONTENT="NOINDEX, NOFOLLOW">
<meta http-equiv="cache-control" content="max-age=0" />
<meta http-equiv="cache-control" content="no-cache" />
<meta http-equiv="expires" content="0" />
<meta http-equiv="expires" content="Tue, 01 Jan 1980 1:00:00 GMT" />
<meta http-equiv="pragma" content="no-cache" />
<meta http-equiv="refresh" content="10; url=/distil_r_captcha.html?Ref=/pgol/4-abbigliamento/3-Roma%20(RM)&distil_RID=956FEC70-B30F-11E3-A9C9-29845DBA1712" />
<script type="text/javascript" src="/ga.1550061718605.js?PID=6D4E4D1D-7094-375D-A439-0568A6A70836" defer></script><style type="text/css">#d__fFH{position:absolute;top:-5000px;left:-5000px}#d__fF{font-family:serif;font-size:200px;visibility:hidden}#electron9158f7e8,#sheltersf1491b2d,#columns375c0195,#sheltersf1491b2d{display:none!important}</style></head>
<body>
<div id="distil_ident_block">&nbsp;</div>
<div id="d__fFH"><OBJECT id="d_dlg" CLASSID="clsid:3050f819-98b5-11cf-bb82-00aa00bdce0b" width="0px" height="0px"></OBJECT><span id="d__fF"></span></div></body>
</html>

Объявление тега META для браузера

<meta name="robots" content="noindex,follow"/>

Я не знаю. Не могли бы вы предложить причину показать различные html в

WebBrowser и WebClinet.

редактировать

Извините за мой вопрос. Это не проблема с прописными или строчными буквами.

Веб-страница содержит список данных, на самом деле я хочу получить эти данные из загруженных

Строка HTML. Но в нынешней ситуации это невозможно. потому что Webclient загружен

html перенастроен без этих данных. Но когда я пытаюсь перемещаться по одному и тому же URL в браузере

он отображает все данные правильно. Не могли бы вы предложить причину разницы

в Webbrowser и Webclient обновляет содержимое.

Пожалуйста помоги.

  • 0
    Поскольку результаты не обрабатываются по-разному, вряд ли можно сказать, что они разные или содержат «разные значения». Это не имеет значения для читателя. Угадайте, что веб-клиент по какой-то причине старой школы переводит все метатеги в верхний регистр?
  • 0
    Спасибо за ваш ценный ответ. Это не чувствительный к регистру вопрос. Я использую тот же URL в моем веб-браузере и веб-клиенте. Ответ HTML полностью отличается от HTML-источника веб-браузера. Я нашел одно различие в мета-тегах ROBOTS.
Показать ещё 3 комментария
Теги:
web-crawler
webbrowser-control
meta-tags

1 ответ

1
Лучший ответ

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

Но вопрос, который вы должны задать себе, это... действительно ли это имеет значение? Семантический и синтаксический смысл точно такой же. Итак, зачем вам это беспокоиться? Почему это важно, если это прописные или строчные буквы, или если после запятой есть пробел или нет? Это не важно

Кстати, что касается спецификаций в html, см. Эту цитату ниже, взятую из заметки рабочей группы W3C

Имена тегов для элементов HTML могут быть написаны любым сочетанием строчных и прописных букв, которые не учитывают регистр, для имен элементов, указанных в разделе HTML-элементов этого документа; то есть имена тегов не чувствительны к регистру

В принципе, не имеет значения, является ли он строчным или прописным, это все еще HTML

  • 0
    Спасибо за ваш ценный ответ. На самом деле я создаю приложение для загрузки содержимого веб-страницы с использованием WebClient в C #. после получения содержимого HTML. Я передаю это содержимое своим функциям регулярного выражения, чтобы исправить данные, чтобы показать сетку данных. Мое приложение работает правильно в последние два месяца, но на прошлой неделе я вижу, что мое приложение не работает правильно, потому что я не получил свой HTML для получения данных.
  • 0
    Хорошо, я ценю, что вы поделились этой информацией, но КАК это связано с регистром символов? Я не понимаю, в чем ваша проблема и как она связана с вашим первоначальным вопросом
Показать ещё 1 комментарий

Ещё вопросы

Сообщество Overcoder
Наверх
Меню