Xpoint
   [напомнить пароль]

Парсер HTML, как?

Метки: [без меток]
2009-10-14 21:30:43 [обр] Олег[досье]
Дано:
Есть список оборудования в текстовом виде колонкой:
NS-495
NSR-683 пневмо
и т.д.
Есть сайт поставщика с описанием этого оборудования, на нем реализован поиск по сайту.
Найти решение:
Нужно найти товар с помощью поиска и сохранить описание в виде html кода в текстовый документ (csv), в виде двух колонок название(из списка)|описание(с сайта). Код для копирования постоянный и заключен между тэгами table.
Как это можно реализовать (примеры кода и т.д.), и существуют ли программы?
спустя 12 часов [обр] Филипп Ткачев(20/112)[досье]
сообщение промодерировано
спустя 3 часа 4 минуты [обр] Алексей Севрюков(162/1280)[досье]
Олег[досье] Так, а владелец сайта в курсе ваших намерений? Может быть просто попросить у него готовую базу? А если он против — то Ваши действия незаконны и помогать Вам врядли кто-то будет на этом форуме. Граббинг тут никто не поощряет.
спустя 4 часа 10 минут [обр] Олег[досье]
С сайта было бы быстрее, я же не буду каждый раз при обновлении просить базу да и под нее нужно будет писать код тоже. Владелец в курсе не кто не против. Позиций очень много и они постоянно обновляются по несколько сотен в день и больше... все позиции мне не нужны, нужны только те, что в моем каталоге, в ручную долго.
Подскажите примеры кода и способы реализации.
спустя 3 часа 6 минут [обр] Алексей Севрюков(162/1280)[досье]
Олег[досье] открываете исходный код (HTML) страницы с товаром. Они у Вас если я правильно понял - однотипные. Находите нужные данные и используя уникальные куски текста с помощью вышеуказанной функции вырезаете оттуда нужные Вам данные. Регулярное выражение скорее всего будет не единственным, а их будет несколько.
И все же самый простой вариант с согласия владельца сайта сделать скрипт, который будет отдавать Вам CSV сразу, это будет:
  1. Быстрее (не нужно будет ходить по страницам сайта), достаточно один раз загрузить полный CSV
  2. Надежнее (при смене HTML Вам не придется переписывать Ваш скрипт)
  3. Легче (не создает дополнительной нагрузки на сервер)
Powered by POEM™ Engine Copyright © 2002-2005