2 / 2 / 0
Регистрация: 02.06.2012
Сообщений: 34
|
|||||||||||
1 | |||||||||||
.NET 4.x Парсинг странички, выбор нужного текста и сохранение в файл csv06.08.2012, 14:38. Показов 4123. Ответов 12
Метки нет (Все метки)
программа парсинга.
Парсит странички,выберая нужный текст и сохраняет в файл csv. Сделал: 1 перебирает все странички с нужной инфой по ссылкам на след страницы. 2заходит по ссылкам в описание нужного объекта для вытаскивания инфы. 3парсит нужную инфу 4 Сохранение - тут ошибка.Программа запускается ,работает,вроде бы как проходит все этапы но в файл пустой.Помогите найти ошибку. код класса:
0
|
06.08.2012, 14:38 | |
Ответы с готовыми решениями:
12
Парсинг и сохранение csv файла Парсинг XML и выбор нужного узла Выбор нужного текста в html Сохранение из формы в CSV файл |
canopen
|
06.08.2012, 16:48
#2
|
Не по теме: А вы умеете отладчиком пользоваться? Если нет, то это удобный случай научиться. Всегда пригодится.
0
|
200 / 168 / 38
Регистрация: 21.10.2011
Сообщений: 178
|
|||||||||||
06.08.2012, 17:26 | 3 | ||||||||||
Проблема в строке
Например,
1
|
2 / 2 / 0
Регистрация: 02.06.2012
Сообщений: 34
|
||||||||||||||||
07.08.2012, 13:02 [ТС] | 4 | |||||||||||||||
спасибо попробую.
Отладчиком не умею,тоже попробую.Спасибо. Добавлено через 14 минут попробовал,подставил по очереди
на
Добавлено через 29 минут оно сохраняет в файле но только одну страничку и добовляет инфу с первой странички много раз пока не закроешь программу
Добавлено через 17 часов 47 минут Разобрался,дело пошло,парсит,но сохраняет по 5 или больше копий информации из каждой страницы.
0
|
200 / 168 / 38
Регистрация: 21.10.2011
Сообщений: 178
|
|
07.08.2012, 13:25 | 5 |
Очевидно, что какой-то из ваших циклов отрабатывает лишние разы. Это прилично усложняет жизнь, да и вас путает.
Хотя бы присмотритесь к HtmlNodeCollection C, внутри прохода по которой у нас вложенный цикл по коллекции HtmlNodeCollection Names. Да и всё это крутится в цикле в мэйне, где идет обход страниц... Однозначно, количество циклов надо уменьшать. Разберетесь с этим - тогда и проблема пропадет сама собой + ещё в методе Save чтот непорядок: лист загоняем в массив, который уже записываем в файл Покажите, что было не так и какой xpath в итоге подошел?
1
|
2 / 2 / 0
Регистрация: 02.06.2012
Сообщений: 34
|
|
07.08.2012, 13:44 [ТС] | 6 |
Вот это подошел
HtmlNodeCollection Names = doc.DocumentNode.SelectNodes(@".//*[@id='all_body']//table//tr//td[@valign='top']//h2"); Немного не понял,какой именно из циклов,а сохранение что не так? Если можете , пожалуйста хPath http://www.057.ua/dosug/full/22089 адрес телефон мыло сайт время работы,как их вытащить?
0
|
200 / 168 / 38
Регистрация: 21.10.2011
Сообщений: 178
|
||||||
07.08.2012, 15:37 | 7 | |||||
1
|
2 / 2 / 0
Регистрация: 02.06.2012
Сообщений: 34
|
||||||
07.08.2012, 16:31 [ТС] | 8 | |||||
Спасибо шяс попробую
Добавлено через 39 минут Работает.Но парсит первую страничку дважды,если её закоментить то вторую страничку дважды.
и из некоторых кафе не вытягивает инфу адрес телефон сайт
0
|
200 / 168 / 38
Регистрация: 21.10.2011
Сообщений: 178
|
||||||
07.08.2012, 16:38 | 9 | |||||
Я же не делал универсальный парсер. Я показал, в какую сторону двигаться
//Писал xpath по двум страницам образца. Возможно на других страницах другие аттрибуты этих нод. Или же таких нод несколько находится. Надо собрать статистику, найти закономерности и применить ко всему этому один xpath Не вникая в код, как вариант, для избавления от дубликатов могу предложить
2
|
2 / 2 / 0
Регистрация: 02.06.2012
Сообщений: 34
|
|
07.08.2012, 19:54 [ТС] | 10 |
Понял,большое спасибо)Буду пробовать,результаты выложу сюда.
Добавлено через 2 часа 22 минуты работает,дубли убирает но 2ю страничку все равно двыжды парсит и её не убирает
1
|
FireFenix
|
||||||
07.08.2012, 20:29 | 11 | |||||
Мой вариант
Выводит в итоге:
|
FireFenix
|
|
07.08.2012, 20:50 | 12 |
Единственное нужно поменять вывод в консоль на вывод в файл, думаю с этим проблем не будет =)
|
2 / 2 / 0
Регистрация: 02.06.2012
Сообщений: 34
|
|
09.08.2012, 10:56 [ТС] | 13 |
Оо спасибо,тоже вариант)))
0
|
09.08.2012, 10:56 | |
09.08.2012, 10:56 | |
Помогаю со студенческими работами здесь
13
Сохранение несколько StringGrid в один CSV файл Парсинг базы данных и сохранение результата в отдельный файл Ненужная строка при экспорте текста в CSV-файл Парсинг странички Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |