Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > C# (си шарп)
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 18.01.2012, 20:55   #1
OLEG'arh
Пользователь
 
Аватар для OLEG'arh
 
Регистрация: 23.11.2006
Сообщений: 42
Лампочка парсер для HTML страниц

Всем привет!

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

для примера:
вот ссылка проблемной страницы http://zakupki.gov.ru/pgz/public/act...smallBisnes=on

страница очень тяжелая.
цель: вытянуть все Реквизиты заказа.
так как в C# соображаю как любитель, то исходя из своих знаний попробовал через XmlTextReader
сохранил исходный текст в файл и запустил.
программа дала одно сообщение и ушла в себя.
Я решил, что это из за того, что для XmlTextReader нужен чистый XML... потому так произошло.

Код:
private void button2_Click(object sender, EventArgs e)
        {
            XmlTextReader XmlReader = new XmlTextReader("TimeSetting.xml");
            while (XmlReader.Read())
            {
                if (XmlReader.NodeType == XmlNodeType.Element)
                {
                    MessageBox.Show(XmlReader.NodeType.ToString() + " |  " + XmlReader.Name.ToString());
                    
                }
                
            }
Кто что может посоветовать?
мне для личного опыта эта задача очень интересна
OLEG'arh вне форума Ответить с цитированием
Старый 19.01.2012, 10:00   #2
Hollander
Участник клуба
 
Аватар для Hollander
 
Регистрация: 03.05.2007
Сообщений: 1,189
По умолчанию

Хм, а почему ты решил, что для разбора Html надо использовать xml reader?
В сети хватает готовых решений,например: http://htmlagilitypack.codeplex.com/
Если же надо парсить xml reader'ом, то в помощь TidyNet, он может Html в xml перегонять. Ну и как бы никто регулярные выражения не отменял.
Hollander вне форума Ответить с цитированием
Старый 19.01.2012, 14:47   #3
OLEG'arh
Пользователь
 
Аватар для OLEG'arh
 
Регистрация: 23.11.2006
Сообщений: 42
По умолчанию

С помощью регулярок не вариант.
Ссылку на сайт я привёл, можете взглянуть на исходный код.
Напомню, что целью являются "Реквизиты заказа".

Ночью пробовал htmlagilitypack, но ещё не успел осмыслить как им пользоваться.
Я был бы весьма признателен, если кто-нибудь выложил бы здесь пример
как с помощью htmlagilitypack с указанного сайта вытянуть заголовок.

<html>
<head>
<title>Реестр опубликованных заказов</title>

Hollander, Спасибо. Я сейчас на работе. Вечером посмотрю внимательно информацию по предоставленным Вами ссылкам.
OLEG'arh вне форума Ответить с цитированием
Старый 19.01.2012, 22:26   #4
OLEG'arh
Пользователь
 
Аватар для OLEG'arh
 
Регистрация: 23.11.2006
Сообщений: 42
По умолчанию

Вот тот самый минимум необходимый для меня.
по ссылке все кому нужно могут скачать простенький проект.
http://olegarh170788.narod.ru/ARHIV/...plication1.rar
настраиваем XPath под себя;
компилируем;
запускаем;
в текст-боксе вставляем ссылку на интересующую страницу




Дальше будет проще =)
OLEG'arh вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Парсер беков и кол. страниц сайта в гогле и яндексе gefest58 Общие вопросы Delphi 0 24.10.2010 11:49
C#скрипт для обработки html страниц S.T.A.L.K.E.R. Помощь студентам 1 06.03.2009 18:18