| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Общие вопросы по .NET и C# > HttpWebRequest и HttpWebResponse урезаны? |
| Автор: gogzor 2.11.2008, 19:12 |
| Всем привет. Вот сейчас пишу программку. Там нужно из HTML страницы парсить все hidden поля. Так вот , я это делаю по привычке с помощью классов HttpWebRequest & HttpWebResponse. Но когда я пытаюсь парсить содержимое страницы , полученое в ходе операции...то hidden полей там нет.. А если я например смотрю HTML страницы в браузере (FireFox) через плагин Firebug , то все поля видны. Можно ли как то получить эти поля классами HttpWebRequst & HttpWebResponse? Или есть ещё какие-нибудь варианты? |
| Автор: Bogdan1024 2.11.2008, 20:10 | ||
У меня почему-то видны все невидимые поля. Как ты читаешь что у тебя их не видно? |
| Автор: Dims 3.11.2008, 15:11 |
| Наверняка ошибка в регулярном выражении. Никакой урезанности по hidden полям быть не может, так как hidden это команда для рендерера HTML, а HttpWebRequest получают исходный HTML-код не интерпретируя его. Вы посмотрите в отладчике содержимое прочитанного текста-то. |
| Автор: actual 3.11.2008, 15:16 |
| Как вариант, скрытые поля могут генерироваться сервером только при наличии определённых куков.. или вообще ява-скриптом, что есть самый плохой вариант для вас. |
| Автор: Dims 3.11.2008, 15:20 |
| А вообще-то да, и такое может быть. Можно проверить при помощи программы Wget. Это простейший браузер-скачивальщик. Если там будут присутствовать эти скрытые поля, то, значит, ни куки, ни джаваскрипт не участвуют в проблеме. |
| Автор: Bogdan1024 3.11.2008, 17:08 |
| Если невидимые поля генерируются javascript'ом, то их не будет видно и в исходнике страницы. |
| Автор: Dims 3.11.2008, 17:53 |
| Он каким-то Firebug-ом открывал. Я вижу, он DOM модель показывает. Возможно, эта примочка показывает и то, что сгенерировано динамически. Но я не знаю, не работал с ней. |
| Автор: gogzor 3.11.2008, 18:53 |
| Проблема решена. FireBug показывает всё статическое и динамическое. При запросе добавил UserAgent - Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0). В нём эти поля возможно получить. Движок который я парсил , не показывает поля в FireFox, хотя они статичные. |