Archit9373284448 Ответов: 4

Просмотр источника веб-страницы (.aspx pages)


Привет всем
Я пытаюсь выбросить эту страницу:
http://www.webhostdir.com/search/profile.aspx?spid=19137[^]

Используя код примерно так
Dim myRequest As HttpWebRequest = DirectCast(WebRequest.Create("http://www.webhostdir.com/search/profile.aspx?spid=19137"), HttpWebRequest)
        myRequest.Method = "GET"
        myRequest.KeepAlive = False
        Dim webresponse As HttpWebResponse
        Try
            webresponse = DirectCast(myRequest.GetResponse(), HttpWebResponse)
            Dim enc As Encoding = System.Text.Encoding.GetEncoding(1252)
            Dim loResponseStream As New StreamReader(webresponse.GetResponseStream(), enc)
            Dim r As String = loResponseStream.ReadToEnd()
            My.Computer.FileSystem.WriteAllText("C:\final.txt", r, True)
            loResponseStream.Close()
            webresponse.Close()
        Catch
        End Try


Но это не работает, когда я вручную загружаю страницу, она показывает мне размер 54 КБ, а по методу выше, когда я ее разрываю, она показывает только 14 Кб файла.

Нужна помощь.

Спасибо

это онлайн-сервис, который захватывает в соответствии с моими потребностями. может ли кто-нибудь помочь мне с логикой их разрыва
http://www.ex-designz.net/htmlviewer.asp

TweakBird

Отредактировано для форматирования.

Sandeep Mewara

Я не мог понять, в чем твоя проблема?

Archit9373284448

проблема в том, что мне не хватает 40 КБ данных.

Sandeep Mewara

Вы уверены, что скучаете по ним ? Не может ли быть так, что все данные есть, но просто сжаты?

Archit9373284448

нет я в этом уверен,
если вы видели страницу, которую я прикрепил...меня интересует только средняя страница данных. и это то, чего мне тоже не хватает..

4 Ответов

Рейтинг:
35

Sergey Alexandrovich Kryukov

То, что я нашел, еще не является полным ответом, но это может помочь вам разобраться в этом.

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

<input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="... I skipped the content here ... " />


Я не стал показывать содержание значения атрибута — оно довольно длинное.
Итак, вот в чем разница: по крайней мере в одном случае это значение намного больше, если вы используете веб-браузер. Приложение использует скрытые элементы для сохранения состояния представления, что является известным методом.

Хотя я еще не знаю, чем отличаются запросы. Может быть, ты сможешь это выяснить. Можно шпионить за HTTP, чтобы получить то, что веб-браузер посылает, многословно.

—СА


Espen Harlinn

Установка ОП на правильном пути ... моя 5

Sergey Alexandrovich Kryukov

Большое спасибо, Эспен.
К сожалению, я пока не знаю подробностей.
Может быть, утилита, которую вы посоветовали, может помочь?
--СА

Sandeep Mewara

Точно! 5!

Sergey Alexandrovich Kryukov

Танка!

Sandeep Mewara

:) :)

Рейтинг:
0

Espen Harlinn

Вот такая утилита wget[^] - который выполняет необходимые операции. Вы можете выполнить его из своего кода, используя Процесс[^] класс. Хотя wget является открытым исходным кодом, он не написан на c#.

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

С уважением
Эспен Харлинн


Sandeep Mewara

Хорошая утилита, приятно знать! 5! :)

Espen Harlinn

Спасибо Сандипу Меваре!

Sergey Alexandrovich Kryukov

Отличная находка, Эспен, очень полезная. Мой 5.
--СА

Espen Harlinn

Спасибо Сакрюкову!

Archit9373284448

ЛОЛ, это был мой 2-й вариант...

Archit9373284448

А ТЕПЕРЬ ВОПРОС В ТОМ, КАК WGET ЭТО СДЕЛАЛА?

Espen Harlinn

Я думаю ты найдешь ответ here:http://downloads.sourceforge.net/gnuwin32/wget-1.11.4-1-src-setup.exe

Рейтинг:
0

Anupama Roy

Взгляните на эту статью.

http://www.4guysfromrolla.com/articles/122204-1.aspx#postadlink[^]

Я не уверен, что класс WebClient поможет вам в этом сценарии.Если вы еще не пробовали этого,взгляните и на это.

http://www.4guysfromrolla.com/webtech/070601-1.shtml[^]


Archit9373284448

К сожалению, это не работает... хотя Спасибо за ваши усилия

Рейтинг:
0

Estys

Это может повлиять или не повлиять на вас.
См. ниже обсуждение :
Сохранение источника страницы с помощью webrequest[^]

Рекомендуется использовать элемент управления webbrowser, если вам нужна браузерная версия страницы.

Овации