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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Вернуть HTML код странички в файл или массив 
V
    Опции темы
GOBLIN_TT
Дата 14.5.2008, 10:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Народ всем привет.)
Помогите есть следующая проблема.

Необходимо вернуть HTML код странички, в массив или файл.
Например есть сайт, www.microsoft.com, с ХТМЛ кодом, <h1> Hello </h1>.

Заходим в нашу программу, с WebBrowser control, по этому адресу, и программа должна вернуть этот самый ХТМЛ код, "<h1> Hello </h1>".
Возможно ли такое слделать?

Help  smile 
--------------------
PM MAIL WWW ICQ   Вверх
Kosten
Дата 14.5.2008, 11:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 45
Регистрация: 30.6.2003
Где: Cанкт-Петербург

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



GOBLIN_TT, это возможно, только для этого не обязательно использовать WebBrowser control.
Я для таких целей работал с WebRequest и WebResponse.
PM MAIL WWW ICQ   Вверх
GOBLIN_TT
Дата 14.5.2008, 11:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Kosten - а есть простой пример?)
--------------------
PM MAIL WWW ICQ   Вверх
Kosten
Дата 14.5.2008, 12:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 45
Регистрация: 30.6.2003
Где: Cанкт-Петербург

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



Цитата(GOBLIN_TT @  14.5.2008,  11:11 Найти цитируемый пост)
Kosten - а есть простой пример?) 

нашел в MSDN

Код

' Create a 'WebRequest' object with the specified url 
Dim myWebRequest As WebRequest = WebRequest.Create("www.contoso.com")

' Send the 'WebRequest' and wait for response.
Dim myWebResponse As WebResponse = myWebRequest.GetResponse()

' Call method 'GetResponseStream' to obtain stream associated with the response object
Dim ReceiveStream As Stream = myWebResponse.GetResponseStream()

Dim encode As Encoding = System.Text.Encoding.GetEncoding("utf-8")

' Pipe the stream to a higher level stream reader with the required encoding format.
Dim readStream As New StreamReader(ReceiveStream, encode)
Console.WriteLine(ControlChars.Cr + "Response stream received")
Dim read(256) As [Char]

' Read 256 charcters at a time    .
Dim count As Integer = readStream.Read(read, 0, 256)
Console.WriteLine("HTML..." + ControlChars.Lf + ControlChars.Cr)
While count > 0

    ' Dump the 256 characters on a string and display the string onto the console.
    Dim str As New [String](read, 0, count)
    Console.Write(str)
    count = readStream.Read(read, 0, 256)

End While
Console.WriteLine("")

' Release the resources of stream object.
 readStream.Close()

 ' Release the resources of response object.
myWebResponse.Close()


PM MAIL WWW ICQ   Вверх
GOBLIN_TT
Дата 15.5.2008, 11:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Слушай, неподскажеш куда именно копируется код ? smile     smile

Добавлено через 13 минут и 25 секунд
Всё вроде понял, надо было создать консольное приложение.  smile 

А под виндовс апликейшн будет работать данный код?
--------------------
PM MAIL WWW ICQ   Вверх
GOBLIN_TT
Дата 15.5.2008, 13:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Всё я разобрался, большое тебе спасибо!  smile 

Вот код под винду. (если каму нужен)
Код

Imports System.Net
Imports System.IO
Imports System.Text

Public Class Form1

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        ' Create a 'WebRequest' object with the specified url 
        Dim myWebRequest As WebRequest = WebRequest.Create("http://goblin.tushino.com")

        ' Send the 'WebRequest' and wait for response.
        Dim myWebResponse As WebResponse = myWebRequest.GetResponse()

        ' Call method 'GetResponseStream' to obtain stream associated with the response object
        Dim ReceiveStream As Stream = myWebResponse.GetResponseStream()

        Dim encode As Encoding = System.Text.Encoding.GetEncoding("utf-8")

        ' Pipe the stream to a higher level stream reader with the required encoding format.
        Dim readStream As New StreamReader(ReceiveStream, encode)
        Console.WriteLine(ControlChars.Cr + "Response stream received")
        Dim read(256) As [Char]

        ' Read 256 charcters at a time    .
        Dim count As Integer = readStream.Read(read, 0, 256)
        Console.WriteLine("HTML..." + ControlChars.Lf + ControlChars.Cr)
        Dim i As Integer = 0
        Dim myStrings(100) As String
        While count > 0
            ' Dump the 256 characters on a string and display the string onto the console.
            Dim str As New [String](read, 0, count)
            Console.Write(str)
            count = readStream.Read(read, 0, 256)

            'RichTextBox1.Text = (str)
            i = i + 1
            myStrings(i) = str
            Me.RichTextBox1.Lines = myStrings

        End While
        Console.WriteLine("")

        ' Release the resources of stream object.
        readStream.Close()

        ' Release the resources of response object.
        myWebResponse.Close()



    End Sub
End Class



Это сообщение отредактировал(а) GOBLIN_TT - 15.5.2008, 13:38
--------------------
PM MAIL WWW ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума VB .NET
diadiavova
  • Прежде чем задать вопрос, воспользуйтесь поиском: возможно Ваш вопрос уже обсуждался и на него был получен ответ.
  • Если такой же вопрос не найден, не стоит задавать свой вопрос в любую тему, создайте новую.
  • Заголовок темы должен отображать ее суть.
  • Содержание поста должно описывать проблему понятно, но в то же время, по возможности, лаконично. Сначала следует описать суть вопроса, потом можно привести пример кода, не вынуждайте других участников угадывать в чем Ваша проблема - телепатов здесь нет.
  • Будьте взаимно вежливы и дружелюбны.
  • При оформлении сообщений используйте форматирование, примеры кода заключайте в теги [CODE=vbnet][/CODE].
  • Также ознакомьтесь с общими правилами, действующими на всем форуме.
  • Если вопрос решен, не забывайте помечать тему решенной(вверху темы есть ссылка). Кроме того, если Вы хотите отблагодарить участников, оказавших помощь в решении, можно повысить им репутацию, в случае, если у Вас менее 100 сообщений в форуме и функция изменения репутации Вам недоступна, можете написать сюда.
  • Общие вопросы по программированию на платформе .NET обсуждаются здесь.
  • Литература по VB .NET обсуждается здесь.

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

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


 




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


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

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