Модераторы: Partizan, gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> парсинг HTML форм, SgmlReader лезет на http://www.w3.org/ 
:(
    Опции темы
theHelg
Дата 25.6.2009, 13:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 74
Регистрация: 23.6.2009

Репутация: нет
Всего: нет



Добрый день!

Достаю страницу через 
Код

            HttpWebRequest myHttpWebRequest = (HttpWebRequest)HttpWebRequest.Create(url);


Затем пытаюсь перевести html в xml, чтобы использую xpath можно было достучаться до нужного элемента.

Использовал статью и код проекта отсюда: http://blogs.gotdotnet.ru/personal/poigrae...2b-4fcfc172b85e

В итоге, простые сайты (или точнее, хорошо структурированные) типа yandex.ru SgmlReader парсит на ура, но с более сложными - лезет на сайт http://www.w3.org/ и скачивает обновления, что ли?

Фидлер показывает:

GET http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd
200 OK

GET http://www.w3.org/TR/xhtml1/DTD/xhtml-lat1.ent
200 OK

GET http://www.w3.org/TR/xhtml1/DTD/xhtml-symbol.ent
200 OK

GET http://www.w3.org/TR/xhtml1/DTD/xhtml-special.ent
200 OK

А как можно это все скачать и подложить куда-нибудь в папку солюшина?
А то на каждый запрос к SgmlReaderу он лезет и скачивает эти файлы...

Как я понял, это происходит в случае, если в заголовке страницы стоит:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

Как это можно побороть?

PM MAIL   Вверх
diadiavova
Дата 26.6.2009, 00:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Доктор Зло(диагност, настоящий, с лицензией и полномочиями)
****


Профиль
Группа: Модератор
Сообщений: 5821
Регистрация: 14.8.2008
Где: В Коньфпольте

Репутация: 18
Всего: 142



Там есть несколько свойств для работы с DTD, я посмотрел вроде как свойство Dtd как раз позволяет использоват кэшированные версии схем. Кроме того, для разбора хтмл схема вообще ни к чему, так что можно перед разбором просто удалить доктайп и всё.
Кроме того, взгляни сюда. Там есть форум по sgmlreader'ру и кроме того там как они пишут лежит исправленная его версия. Попробуй.


--------------------
Хочешь получить мудрый совет - читай подписи участников форумов.
Злой доктор Щасзаболит smile
PM   Вверх
theHelg
Дата 26.6.2009, 13:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 74
Регистрация: 23.6.2009

Репутация: нет
Всего: нет



Спасибо, попробую
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
Partizan
PashaPash

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, Partizan, PashaPash.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | .NET для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0422 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.