Парсер сайтов и файлов (парсинг данных с сайта в Excel)

Структура программы «Парсер сайтов»

Надстройка Parser для Excel — простое и удобное решение для парсинга любых сайтов (интернет-магазинов, соцсетей, площадок объявлений) с выводом данных в таблицу Excel (формата XLS* или CSV), а также скачивания файлов.

Особенность программы — очень гибкая настройка постобработки полученных данных (множество текстовых функций, всевозможные фильтры, перекодировки, работа с переменными, разбиение значения на массив и обработка каждого элемента в отдельности, вывод характеристик в отдельные столбцы, автоматический поиск цены товара на странице, поддержка форматов JSON и XML).

 

В парсере сайтов поддерживается авторизация на сайтах, выбор региона, GET и POST запросы, приём и отправка Cookies и заголовков запроса, получение исходных данных для парсинга с листа Excel, многопоточность (до 200 потоков), распознавание капчи через сервис RuCaptcha.com, работа через браузер (IE), кеширование, рекурсивный поиск страниц на сайте, сохранение загруженных изображений товара под заданными именами в одну или несколько папок, и многое другое.

Поиск нужных данных на страницах сайта выполняется в парсере путем поиска тегов и/или атрибутов тегов (по любому свойству и его значению). Специализированные функции для работы с HTML позволяют разными способами преобразовывать HTML-таблицы в текст (или пары вида название-значение), автоматически находить ссылки пейджера, чистить HTML от лишних данных.

За счёт тесной интеграции с Excel, надстройка Parser может считывать любые данные из файлов Excel, создавать отдельные листы и файлы, динамически формировать столбцы для вывода, а также использовать всю мощь встроенных в Excel возможностей.
Поддерживается также сбор данных из текстовых файлов (формата Word, XML, TXT) из заданной пользователем папки, а также преобразование файлов Excel из одного формата таблицы в другой (обработка и разбиение данных на отдельные столбцы)

В программе «Парсер сайтов» можно настроить обработку нескольких сайтов. Перед запуском парсинга (кнопкой на панели инструментов Excel) можно выбрать ранее настроенный сайт из выпадающего списка.

Пример использования парсера для мониторинга цен конкурентов

 

Видеоинструкция

На видео рассказывается о работе с программой, и показан процесс настройки парсера интернет-магазина:

 

Дополнительные видеоинструкции, а также подробное описание функционала, можно найти в разделе Справка по программе

 

В программе можно настроить несколько парсеров (обработчиков сайтов).
Любой из парсеров настраивается и работает независимо от других.

Примеры настроенных парсеров (можно скачать, запустить, посмотреть настройки)

Видеоинструкция (2 минуты), как запустить готовый (уже настроенный) парсер

 

Настройка программы, - дело не самое простое (для этого, надо хоть немного разбираться в HTML)

Если вам нужен готовый парсер, но вы не хотите разбираться с настройкой,
— закажите настройку парсера разработчику программы. Стоимость настройки под конкретный сайт - от 2000 рублей.
(настройка под заказ выполняется только при условии приобретения лицензии на надстройку «Парсер» (3300 руб)

Инструкция (с видео) по заказу настройки парсера
По всем вопросам, готов проконсультировать вас в Скайпе.

 

Программа не привязана к конкретному файлу Excel.
Вы в настройках задаёте столбец с исходными данными (ссылками или артикулами),
настраиваете формирование ссылок и подстановку данных с сайта в нужные столбцы,
нажимаете кнопку, - и ваша таблица заполняется данными с сайта.

Программа «Парсер сайтов» может  быть полезна для формирования каталога товаров интернет-магазинов,
поиска и загрузки фотографий товара по артикулам (если для получения ссылки на фото, необходимо анализировать страницу товара),
загрузки актуальных данных (цен и наличия) с сайтов поставщиков, и т.д. и т.п.

 

Справка по программе «Парсер сайтов»

Можно попробовать разобраться с работой программы на примерах настроенных парсеров

Как скачать и протестировать программу

Комментарии

Сделал агрегатор нескольких фриланс бирж, с возможностью отправки уведомлений в вк при нахождении нужной работы отобранной через ключевые и минус слова, надо просто зациклить этот парсер. У меня один вопрос как сделать так что бы парсер работал в бесконечном цикле? Я так понимаю добавить действие в parser_finish которое бы возвращало начало работы к первому значению исходных данных на первый подуровень, но какое действие не могу смекнут.

Напишите мне в скайп, обсудим, что и для чего вы делаете, — тогда может смогу что-нибудь посоветовать

путем перехода на первое действие в списке я так понимаю действует только если в парсере 1 подуровень, а если у меня их 3 и по окончании парсинга надо например запустить парсинг с первого подуровняуровня. какое действие мне надо добавить в parser_finish что бы зациклить парсинг?

Да, можно
Например, путем перехода на первое действие в списке
Инструкция: https://excelvba.ru/programmes/Parser/manuals/StopCodes

Здравствуйте. Можно ли как то одно фиксированное исходное значение поместить в бесконечный цикл без использования планировщика?

Мария, будет заказ — будет и оценка стоимости.
Заказы на парсер принимаются в таком виде
http://excelvba.ru/programmes/Parser/order
По срокам, обычно, от 1 до 4 дней после оплаты

Добрый день.
Сколько будет стоить настроить парсер? Какие условия и сроки?

Без понятия, что у вас там не так (я не телепат). Может, где какой буквой ошиблись.
Как видите, у меня всё работает
Могу настроить под заказ

Игорь, спасибо за ответ! Сделал все по инструкции, 5 идентичных действий, на входящее значение подаю ссылку на товар - но ответ все равно приходит пустой? Что могло пойти не так?) Кеширование страниц выключено. Я даже менял айпи на роутере.

Лев, тут надо обязательно передавать заголовок запроса x-requested-with=XMLHttpRequest
иначе ответ придёт пустой.

Запрос (GET) выполняется на URL вида https://ru.iherb.com/catalog/Get360ImageUrls?pid=69226
где 69226 - id товара из ссылки на карточку товара

 

Исходное значение
Действие Параметр Значение Результат
Часть строки по разделителю (split) Разделитель / Число (длиной 5 символов)
Индекс нужной части last
Список имён переменных через |
Добавить текст ДО или ПОСЛЕ Префикс https://ru.iherb.com/catalog/Get360ImageUrls?pid= Ссылка:

Суффикс
Открыть HTTP соединение URL <без изменений>
Метод (тип) запроса GET
Добавить заголовок запроса Заголовок x-requested-with <без изменений>
Значение XMLHttpRequest
Использовать для ВСЕХ запросов нет
Отправить HTTP запрос и получить ответ Сохранять Cookies нет Текст (длиной 497 символов)

Кодировка веб-страницы

Добрый день! Подскажите, пожалуйста, как например на данной странице https://www.iherb.com/pr/Olympian-Labs-Inc-Melatonin-Alcohol-Free-Grape-... найти все ссылки класса "zoom-image"? Они появляются на странице по клику на картинку 360, но если настраивать клик в браузере - то это будет очень долгий процесс. Возможно, есть способ пост/гет запросами сделать? Пробовал по Вашей инструкции из видео сделать гет-запрос (в данном сайте именно гет) - но ничего не возращается, мол "сервер еще не обработал...".
Буду очень признателен за подсказку! И приведу клиентов! ;)

Здравствуйте, Евгений.
Да, возможность есть.
Читайте справку по действию HTML: Поиск тегов
https://excelvba.ru/programmes/Parser/actions/GetTags

В четвертом параметре «Тип результата / извлекаемый атрибут» можно указать название атрибута data-product-vendor, и результатом будет значение SPARKY

Есть возможность вот такой тег А разобрать по костям
В нем есть все что нужно - вашими средствами получается только название вытащить - а там и цена и код

Отвертка аккумуляторная SPARKY GR 3,6Li

Здравствуйте, Евгений.
В справке по парсеру написано про возможность использования планировщика задач:
https://excelvba.ru/programmes/Parser/manuals/scheduler

добрый день
Есть возможность запуска парсера не в ручную а в автоматическом режиме?

По сайту vamsvet.ru — там настройка немного нестандартная (пейджер на скриптах, иначе настраивается перебор страниц)
Можете приобрести готовое решение для этого сайта:
https://excelvba.ru/programmes/Parser/samples/vamsvet.ru

Добрый день, подскажите какой использовать префиск пейджера если значение /#p1 Например https://www.vamsvet.ru/catalog/section/lyustry/#p2

Здравствуйте, Вадим

При изменении значений в выпадающих списках на этом сайте выполняются POST запросы
Например, при выборе в первом выпадающем списке значения «автобус» выполняется POST запрос на адрес http://depo.vn.ua/system/ajax с параметрами:

field_transporttype: 2 (номер выбранного значения в списке, начиная с 0. Здесь 2 - это автобус)
_triggering_element_name: field_transporttype (название выпадающего списка)
form_id: rozklad_dependent_dropdown

(там еще куча параметров, но они не меняются)

Посмотрев вторую видеоинструкцию (по настройке POST запросов), можете попробовать настроить
https://excelvba.ru/programmes/Parser/manuals/Loading_Pages_and_Logon
За выполнение POST запроса отвечает это действие:
https://excelvba.ru/programmes/Parser/actions/WinHTTP_POST

Для данного сайта настройка не очень проста, так что имеет смысл заказать настройку (разбираться долго будете)

справка к программе довольно слабо расписана, это нарочно сделано?

слишком много разных сайтов,
под все случаи инструкции не напишешь

может дадите свои контакты

контакты указаны на сайте: https://excelvba.ru/contacts

Игорь, может дадите свои контакты - хотел бы обсудить сотрудничество (в частности рефералку)

Игорь, спасибо за ответ. а могли бы более подробно рассказать? хотя бы в двух словах. это в сторону расшифровки json смотреть? справка к программе довольно слабо расписана, это нарочно сделано? хотя сама прога огонь

Щёлкать по выпадающему меню в ИЕ особого смысла нет (зачем?)
Всё можно настроить без использования браузера

Добрый день! Подскажите, пожалуйста, как щелкать по элементам дроп-меню? например здесь http://depo.vn.ua/route
Справка в этом плане очень скудная - я нахожу элемент в открытом ИЕ, щелкаю - но ничего не происходит. Уже все элементы в div с дроп меню перебрал, использовал outer html. Также, не хватает справочных данных про генерируемые события в действии "найти элемент в ИЕ". Возможно, нужно в этом направлении смотреть для моей задачи?

Здравствуйте
Да, возможно
В справке о программе об этом написано

Возможно ли сделать атоматический ввод капчи парсером? мне нужно что бы с сайта ИФНС вытягивал номера ИНН

Здравствуйте, Евгений
Такой возможности в программе не предусмотрено

Добрый день!
Есть возможность проверки запуска парсера на компьютере. Например по id "железа". Хочу передать файл со встроенными настройками и нужно что-бы он работал только на определенном компьютере.

User agent - это лишь один из заголовков запроса
Его вы можете задать какой угодно:
https://excelvba.ru/programmes/Parser/actions/HTTP_headers

Прокси можно прописать пока только один

Планируется ли добавление в программу функцию подмены юзер агентов и прокси серверов и как скоро? Мне кажется, что это неотъемлемая функция, это ведь парсер.

Добрый день!
Подскажите пожалуйста, возможно ли спарсить диапазон ссылок такого типа https://mysyite.com/1-100000
Где 1-100000 - диапазон ссылок. Если да, то какие настройки нужно поставить?

Видимо, у вас кеширование включено (его надо отключить, на вкладке Дополнительно)
Команда "Открыть веб-страницу в IE" у вас берет результат из кеша (не запуская IE), а команда "Прокрутить страницу вниз в IE" пытается подключиться к запущенному IE, и, не видя его, выдаёт пустой результат.

Отправить комментарий

Содержание этого поля является приватным и не предназначено к показу.
CAPTCHA
Подтвердите, пожалуйста, что вы - человек:
     _      _       _              ___     __ 
/ \ | |__ | |__ ____ / _ \ / _|
/ _ \ | '_ \ | '_ \ |_ / | (_) | | |_
/ ___ \ | |_) | | |_) | / / \__, | | _|
/_/ \_\ |_.__/ |_.__/ /___| /_/ |_|
Введите код, изображенный в стиле ASCII-арт.