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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Получение данных на разметке html, Как получить значение в тегах  
V
    Опции темы
krewin
Дата 19.7.2011, 16:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Как получить значение в тегах например <title> из html файла. XML непомогает вечные ошибки.

Я бы хотел читать такие сведения из html как form или значение в тегах <tabel>

Можно второй вариант, как получить в XML список <тегов> которые есть в документе
PM MAIL   Вверх
diadiavova
Дата 19.7.2011, 17:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


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


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

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



sgmlreader или htmlagilitypack тебе поможет. Так же можно использовать библиотеку mshtml.


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


Шустрый
*


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

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



Из перечисленных примеров я решил делать так
 
Код

dim a as string ="ya.ru"

Dim request As Net.WebRequest = Net.HttpWebRequest.Create("http://" & a)
        request.Credentials = Net.CredentialCache.DefaultCredentials
        Dim response As Net.HttpWebResponse

        Try
            response = CType(request.GetResponse(), Net.HttpWebResponse)
        Catch ex As Exception
            Console.WriteLine("Сайт не найден")
            Exit Sub
        End Try
        Dim reader As New IO.StreamReader(response.GetResponseStream())


        Dim MAP As String = reader.ReadToEnd

        Dim form() As String = Split(MAP, "<title>")
        Dim ai() As String = form(1).Split("</title>")
        Console.WriteLine(ai(0))


легко и просто

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


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


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

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



Цитата(krewin @  20.7.2011,  21:26 Найти цитируемый пост)
Из перечисленных примеров я решил делать так

Я такого не перечислял.
Цитата(krewin @  20.7.2011,  21:26 Найти цитируемый пост)
легко и просто

Это зависит от того, что тебе надо. Вряд ли это решение можно назвать гибким и универсальным и вряд ли это ответ на тот вопрос, который ты задал в топикстарте. Не думаю, что  этим способом можно 
Цитата(krewin @  19.7.2011,  17:36 Найти цитируемый пост)
 получить в XML список <тегов> которые есть в документе 



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


Новичок



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

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



Цитата(krewin @ 20.7.2011,  20:26)
легко и просто

Но медленно и узко ))) 
Даже если хочется парсить самостоятельно HTML то советую использовать регулярные выражения, они будут быстрее и с большими возможностями.
Варианты которые предложил diadiavova оптимальны(во всяком случае для человека задающего подобные вопросы)... можно еще попробовать засовывать в XML(если это XHTML) но для этого надо быть уверенным в правильности кода страницы.

Вам еще необходимо указывать кодировку (получать ее из response charset) иначе будут кракозябры.
PM MAIL   Вверх
krewin
Дата 28.7.2011, 17:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



при экспортирование в xml возникает достаточно большое количество ошибок, так как все веб страници разные и под каждую не подстроишся так же нерабоате при получение часть страници выводит много ошибок. 
PM MAIL   Вверх
diadiavova
Дата 28.7.2011, 17:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


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


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

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



Цитата(krewin @  28.7.2011,  18:19 Найти цитируемый пост)
при экспортирование в xml возникает достаточно большое количество ошибок

То есть ты хочешь сказать, что твой способ работает лучше? smile 
Цитата(krewin @  28.7.2011,  18:19 Найти цитируемый пост)
так как все веб страници разные и под каждую не подстроишся

в том-то и дело, если в документе у элемента title будут атрибуты, то твоя программа упадет.
К тому же я тебе аж 3 варианта подсказал, ты сейчас какой критикуешь?


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


Новичок



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

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



хорошая информация.
PM MAIL WWW ICQ   Вверх
transparent
Дата 5.8.2011, 15:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



Цитата

dim a as string ="ya.ru"
Dim request As Net.WebRequest = Net.HttpWebRequest.Create("http://" & a)
        request.Credentials = Net.CredentialCache.DefaultCredentials
        Dim response As Net.HttpWebResponse
        Try
            response = CType(request.GetResponse(), Net.HttpWebResponse)
        Catch ex As Exception
            Console.WriteLine("Сайт не найден")
            Exit Sub
        End Try
        Dim reader As New IO.StreamReader(response.GetResponseStream())
        Dim MAP As String = reader.ReadToEnd


заменяем на 

Код

Dim webcl as new net.WebClient
dim s as String = webcl.DownloadString

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

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

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


 




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


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

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