Парсер сайтов и файлов (парсинг данных с сайта в 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)

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

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

 

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

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

 

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

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

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

Комментарии

Дмитрий, если Вам надо оставить 2-3 значения, то используйте действие проверка на соответствие маске:
*условие1*|*условие2*|*условие3*
с параметром "Оставить", а не удалить.

Добрый вечер, Игорь!

Ситуация немного другая. Мне необходимо отбросить неверные результаты по условию "не содержит". Можно было бы использовать проверку на выполнение условия с режимом проверки "не содержит" и действием "удалить", но в этом действии можно задать лишь одно значение. Есть ли возможность задать, например, 2 значения.

В случае с "Проверкой на соответствие маске" мне придётся перечислять огромное множество значений, которые нужно удалить, вместо того, чтобы перечислить 2 или 3 значения, кроме которых все остальные нужно удалить.

Дмитрий, есть такая возможность
В действии «Проверка на соответствие маске» в первом параметре «Маска для проверки на соответствие» можно указать список значений через |
например, *Значение1*|*Значение2*|*Значение3*
Если же список большой, - можно применить таблицу замен (частичное совпадение, полная замена на «пусто»)


Дали, смотрите передаваемые данные в другом браузере (не Chrome)
Месяц назад Chrome перестал показывать передаваемые данные для POST запросов, если POST запрос выполняет редирект.
Подойдет браузер Opera, например (там всё аналогично)

Здравствуйте!
На сайте eventcatalog.ru нет в консоли браузера Form Data. Загрузка в IE тоже не помогает. ХЭЛП!
Не могу авторизоваться(
Видео просмотрел, не знаю, что делать дальше
Спасибо заранее.

Доброе утро!

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

Спасибо большое за поддержку!

Попробовал на другом компьютере (Windows 7), проблема решилась сама собой.

Александр, а зачем всё усложнять?
Действие «Загрузить ИСХОДНЫЙ КОД веб-страницы» вполне справляется с задачей, - к чему все эти отправки GET запросов?

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

Спасибо Игорь, видео очень полезное, но...никак не получается загрузить исходный код https://raiton.ru/category/matrasy/

1. Открыть HTTP соединение
URL - https://raiton.ru/category/matrasy/ Метод запроса - GET

2. Добавить заголовок запроса

:authority:raiton.ru
:method:GET
:path:/category/matrasy/
:scheme:https
accept:text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
accept-encoding:gzip, deflate, sdch
accept-language:ru-RU,ru;q=0.8,en-US;q=0.6,en;q=0.4
cookie:_ym_uid=1508856818332244650; _ym_isad=2; PHPSESSID=a1b5ba75960ed9f15c00d6c834575da3; BITRIX_SM_SALE_UID=1140901; BITRIX_SM_CITY_ID=14; BITRIX_SM_CUR_PRICE_TYPES=%7B%22base%22%3A5%2C%22real%22%3A9%7D; _ga=GA1.2.663184656.1508856818; _gid=GA1.2.1962885479.1509346872
referer:https://raiton.ru/category/matrasy/
upgrade-insecure-requests:1
user-agent:Mozilla/5.0 (Windows NT 5.2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.112 Safari/537.36

Добавил, отключил Cookies & Accept-Encoding

3. Отправить HTTP запрос и получить ответ

Нажимаю тестировать, выдает ошибку - Ошибка! Длина текстового ответа сервера = 0, в байтах: 0, ошибка -2147483638: Данные, необходимые для завершения этой операции еще не доступны. В чем проблема? Что я сделал не так?

Добрый день!

версия 3.1.0 + реализована поддержка плагинов (файлов .xla с дополнительными действиями для обработки данных)

Обновился, не могу найти.

Юрий, кеширование отключили?

Юрий, может что настроили не так, а, может, браузер тупит (IE вообще не славится стабильной работой)
Можем настроить под заказ

Здравствуйте, у меня вопрос такой: при попытке "прокрутить страницу вниз в Explorer" кода нету, как быть

Неверно задали URL (парсер воспринимает символы # и ? как символы маски)
Напишите в первом параметре действия *dom.gosuslugi.ru*
и всё заработает

Во время действи "подключиться к запущенному ie" в результате обработки получается IE not found, хотя ie запущен. В чем может быть причина? https://prnt.sc/h3emtu

Александр, надо передавать заголовки запроса.
Смотрите вторую видеоинструкцию

Добрый день, при попытке загрузить исходный код страницы https://raiton.ru/category/matrasy/?del_filter=y&PAGEN_1=1 выдает ошибку, мол сервер не ответил за столько-то секунд, выдает ошибку моментально, если выбрать кодировку страницы direct выдает ошибку

Ошибка прямой загрузки кода страницы
Код ошибки: 0x800C0008 (-2146697208)
INET_E_DOWNLOAD_FAILURE
The download has failed (the connection was interrupted).

Собственно вопрос, в чем проблема?

Спасибо, Игорь! Проблему решил.

Здравствуйте, Дмитрий
Лицензия не слетит.
Добавьте в список исключений мой сайт ExcelVBA.ru
и расширение файла надстройки *.XLA
(чтобы надстройки вообще не проверялись)

PS: может проще отключить вообще этого защитника, раз от него вреда больше, чем пользы?
Установите лучше бесплатного Касперского
Хотя, настроить исключения - не должно быть сложно.

Центр безопасности защитника Windows стал удалять Parser.xla постоянно. Даже не позволяет включить этот файл в список исключений, т.к. пишет, что он содержит вредоносную ссылку. Что делать? И при повторном скачивании и установке файла не слетит ли лицензия?

Вот спасибо! Не обращал внимание на этот пункт. Дальше разберусь

Виктор, для начала забываем про действие «Загрузить файл с передачей заголовков запроса». Это вообще не то, что вам нужно.
Загрузка любых файлов в парсере настраивается на вкладке ЗАГРУЗКА ФАЙЛОВ.
Добавляем там загрузку, в списке действий получаем массив ссылок (URL) для загрузки.
В качестве имени файла можно указать ссылку на переменную, содержащую массив значений вида
c:/ПолныйПуть1/aaa.jpg, c:/ПолныйПуть2/aaa.jpg

Массив имен файлов должен содержать столько же значений, сколько ссылок (URL для загрузки) сформировано действиями в списке действий загрузки.

Спасибо за ответ. Я понимаю, что у нас страна в стиле "платно". Но я это могу сделать если припрет другими вариантами: 1) внешний скрипт эксель, переименовывает файл в артикул+№.jpg, 2) php скриптом запрос в базу для получения оригинального наименования файла, 3) другие варианты
Вопрос в том, что есть в парсере возможность не применяя всяких внешних изысков это реализовать, может я опять какую-то команду не вижу...

Иван, напишите мне в скайп или на почту, решим проблему.

Здравствуйте.
Купили Ваш парсер на 3 ПК, на все установили, все работает отлично.
На одном из компьютеров после переустановки системы и офиса при вводе эл.почты для регистрации парсера вылазит ошибка, что парсер уже используется на 3 ПК.
Можно ли как-то решить эту проблему?

Виктор, могу настроить под заказ (платно)
Там всё просто, но я не готов бесплатно выспрашивать подробности, и потом расписывать, что где нажать.
Если готовы оплатить - высылайте заказ на почту

Здравствуйте!
не нашел как скачивать файлы (картинки) с одинаковыми названиями.
получаю на входе массив значений dir1/aaa.jpg, dir2/aaa.jpg и т.д. (название файлов одинаковы)
для скачивания нашел только "Загрузить файл с передачей заголовков запроса", тут нет параметров чтобы переименовать файл. получается из всех картинок скачать можно только одну.
как быть?

Пётр, нет простых способов это сделать
Можно что-нибудь наколдовать с настройками, но повозиться надо
Если готовы приобрести программу, и проблема только в добавлении пустых строк, - напишите в скайп, что-нибудь придумаем

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

Помощь с настройкой парсера под сайты НЕ входит в стоимость программы.
За дополнительную плату, - да, можно

Если приобрету парсер, подскажете как настроить, в какую точку "долбить"? Так сказать, направите в верном направлении?