Регистрация Главная Сообщество
Сообщения за день Справка Регистрация

Парсер на C#

-

Школа Читера

- Основы основ - начинаем писать статьи для начинающих с целью создания полноценного раздела

Ответ
 
Опции темы
Старый 27.03.2011, 16:39   #1
 Разведчик
Аватар для v3r53771
 
v3r53771 никому не известный тип
Регистрация: 26.01.2011
Сообщений: 39
Популярность: 12
Сказал(а) спасибо: 21
Поблагодарили 1 раз в 1 сообщении
 
Arrow Парсер на C#

Доброго времени суток.

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

Вот пример исходного текста:
Код:
Запрос неизвестно откуда (27.03.2011 01:16)
    IP: 254.87.111.205
REFERER:
QUERY: 000 Очередной аккаунт прибыл: 97659124:vxcfb0dad40b1545lc6cfb3a8068b111
AGENT: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.1; Trident/4.0; MRA 5.7 (build 03796); MRSPUTNIK 2, 4, 0, 137; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; .NET4.0C)

Запрос неизвестно откуда (27.03.2011 01:16)
    IP: 145.255.170.12
REFERER:
QUERY: 000 Очередной аккаунт прибыл: 43567915:ba4fbflxs40b15d06c6sdf3a80686479
AGENT: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.1; Trident/4.0; MRA 5.7 (build 03796); MRSPUTNIK 2, 4, 0, 137; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; .NET4.0C)

Запрос неизвестно откуда (27.03.2011 01:16)
    IP: 145.14.197.200
REFERER:
QUERY: 000 Очередной аккаунт прибыл: 56795324:748fb0dad40b17406c6cfb3a8068xc47
AGENT: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.1; Trident/4.0; MRA 5.7 (build 03796); MRSPUTNIK 2, 4, 0, 137; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; .NET4.0C)
Следовательно нужно вытянуть из строки в которой есть слова "QUERY: 000 Очередной аккаунт прибыл: " всё что находится дальше, до конца этой строчки, ну и естественно записывать всё это в текстовый файл. Надеюсь доступно объяснил всю суть, теперь уважаемые специалисты zhyk.ru, хотелось бы услышать от вас толковых советов. С уважением, versetti.
________________
  Ответить с цитированием
Старый 27.03.2011, 17:36   #2
Читер-спонсор
 Рыцарь-защитник
Аватар для Nickitee
 
Nickitee сломал счётчик популярности :(Nickitee сломал счётчик популярности :(Nickitee сломал счётчик популярности :(Nickitee сломал счётчик популярности :(Nickitee сломал счётчик популярности :(Nickitee сломал счётчик популярности :(Nickitee сломал счётчик популярности :(Nickitee сломал счётчик популярности :(Nickitee сломал счётчик популярности :(Nickitee сломал счётчик популярности :(Nickitee сломал счётчик популярности :(
Регистрация: 28.08.2009
Сообщений: 603
Популярность: 19129
Золото Zhyk.Ru: 500
Сказал(а) спасибо: 84
Поблагодарили 602 раз(а) в 321 сообщениях
 
По умолчанию Re: Парсер на C#

Был гайд на форуме, поищи внимательней, там всё просто - нужно загнать по сторочно текст в массив, а потом с помощью цикла пройтись по массиву и потом если if (Massiv.IndexOf("Новый аккаунт прибыл") ) {StreamWriter SW = new StreamWriter("ФайлСЛогами.txt", true); SW.WriteLine(Massiv);}
________________
We are Ducks. We are birds. We like bread. We cryack. Cryack.
  Ответить с цитированием
Старый 27.03.2011, 17:56   #3
 Разведчик
Аватар для v3r53771
 
v3r53771 никому не известный тип
Регистрация: 26.01.2011
Сообщений: 39
Популярность: 12
Сказал(а) спасибо: 21
Поблагодарили 1 раз в 1 сообщении
 
По умолчанию Re: Парсер на C#

Вот об этом я и писал в самом начале Я примерно представляю последовательность действий, но к сожалению не умею это передавать на языке программирования. Не судите строго, учусь на примерах
________________
  Ответить с цитированием
Старый 27.03.2011, 20:56   #4
Читер-спонсор
 Рыцарь-защитник
Аватар для Nickitee
 
Nickitee сломал счётчик популярности :(Nickitee сломал счётчик популярности :(Nickitee сломал счётчик популярности :(Nickitee сломал счётчик популярности :(Nickitee сломал счётчик популярности :(Nickitee сломал счётчик популярности :(Nickitee сломал счётчик популярности :(Nickitee сломал счётчик популярности :(Nickitee сломал счётчик популярности :(Nickitee сломал счётчик популярности :(Nickitee сломал счётчик популярности :(
Регистрация: 28.08.2009
Сообщений: 603
Популярность: 19129
Золото Zhyk.Ru: 500
Сказал(а) спасибо: 84
Поблагодарили 602 раз(а) в 321 сообщениях
 
По умолчанию Re: Парсер на C#

Поставь код на бутон:
Код:
            System.IO.StreamReader SR = new System.IO.StreamReader("C:/TexFail.txt", Encoding.GetEncoding("windows-1251")); //Файл с данными
            string obrabotka = SR.ReadToEnd();
            string[] stringSeparators = new string[] { "\n" };
            string[] result = obrabotka.Split(stringSeparators, StringSplitOptions.RemoveEmptyEntries);
            foreach (string FindStroke in result)
            {

                if (FindStroke.IndexOf("Очередной аккаунт прибыл:") != -1)
                {
                    System.IO.StreamWriter SW = new System.IO.StreamWriter("C:/Logs.txt", true); //Файл куда сохранять логи
                    SW.WriteLine(FindStroke.Replace("QUERY: 000 Очередной аккаунт прибыл: ", ""));
                    SW.Close();
                }
            }
Вот результат:
Код:
97659124:vxcfb0dad40b1545lc6cfb3a8068b111

43567915:ba4fbflxs40b15d06c6sdf3a80686479

56795324:748fb0dad40b17406c6cfb3a8068xc47
________________
We are Ducks. We are birds. We like bread. We cryack. Cryack.
  Ответить с цитированием
Пользователь сказал cпасибо:
v3r53771 (28.03.2011)
Старый 28.03.2011, 00:29   #5
 Разведчик
Аватар для v3r53771
 
v3r53771 никому не известный тип
Регистрация: 26.01.2011
Сообщений: 39
Популярность: 12
Сказал(а) спасибо: 21
Поблагодарили 1 раз в 1 сообщении
 
По умолчанию Re: Парсер на C#

Благодарю, всё работает именно так как было нужно Единственное, заменил пути к файлам без указателя диска и папки, таким образом программа работает в любом месте, главное что бы исходный файл лежал с ней в одной папке.
----------------------------------------------------------
Если вдруг у кого-то возникнет вопрос, зачем всё это? поясню на примере Тюряги вконтакте:
1.Набираем приличное количество аккаунтов на снифе.
2.Отсеиваем парсером ненужную информацию, что бы не копировать по одному вручную.
3.Прогоняем через Text Duplicate Killer, что бы оставить только уникальные строчки.
4.Прогоняем через Fake check для отсеивания рабочих аккаунтов.
5.Распоряжаемся ими по своему усмотрению (Передача нычек, подогревов, прокачка бицухи, харкание в баланду недругам и так далее...)
________________

Последний раз редактировалось v3r53771; 28.03.2011 в 01:06.
  Ответить с цитированием
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Парсер логинов Mr.Plagiatos Cross Fire 8 20.04.2011 20:29
[Программа] Парсер Randan Общение и обсуждение Perfect World 15 30.10.2010 20:54

Заявление об ответственности / Список мошенников

Часовой пояс GMT +4, время: 13:06.

Пишите нам: [email protected]
Copyright © 2024 vBulletin Solutions, Inc.
Translate: zCarot. Webdesign by DevArt (Fox)
G-gaMe! Team production | Since 2008
Hosted by GShost.net