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

Надстройка Parser для MS Excel: общие сведения

Предназначение программы: быстрый сбор любых данных с различных сайтов или файлов, с выводом результата в Excel.

Основные возможности:

  • парсинг интернет-магазинов и любых других сайтов (соцсетей, каталогов, объявлений и т.д.)
  • извлечение данных из файлов формата Word / Excel / txt / PDF
  • скачивание файлов (изображений, документов, и т.п.)
  • обновление цен по ссылкам (мониторинг цен конкурентов / РРЦ)

Особенности программы

Простота использования и настройки

  • Запуск парсера нажатием одной кнопки на ленте Excel
  • Для настройки парсеров не нужно знание программирования!
    Достаточно минимально понимать HTML (что такое теги), и изучить 2 основные команды парсера (загрузка страницы, и поиск тегов). Этого достаточно для 90% задач.
  • Если сами не разберётесь с настройкой — всегда можно заказать нам настройку парсера под вашу задачу.
  • Всё что нужно для работы парсера, это Windows 10 (или новее) и Microsoft Excel (версии 2010 или новее)
    Иногда ещё нужен браузер Google Chrome (для работы с проблемными сайтами)
  • Можно настроить программу под несколько разных сайтов (задач), и легко переключаться между настройками через выпадающий список на панели инструментов программы.

Гибкая постобработка данных

  • Множество текстовых функций для обработки полученной информации
  • Разнообразные фильтры и функции перекодировки
  • Работа с переменными и массивами данных
  • Разбиение значений на отдельные элементы с индивидуальной обработкой
  • Автоматический вывод характеристик товаров в отдельные столбцы
  • Интеллектуальный поиск цен на страницах
  • Поддержка форматов JSON и XML

Продвинутые сетевые возможности

  • Несколько способов загрузки страниц — WinHTTP / WinAPI / WinINET / IE / Google Chrome
  • Авторизация — поддержка входа в аккаунты на различных сайтах
  • Региональные настройки — выбор географического региона для парсинга
  • HTTP-запросы — поддержка GET и POST методов, конструктор запросов
  • Cookies и Headers — полная работа с HTTP-заголовками и куки
  • Многопоточность — до 200 одновременных потоков для ускорения работы
  • Обход защиты — распознавание капчи через сервис RuCaptcha.com, паузы между запросами
  • Браузерная интеграция — работа с защищёнными от роботов сайтами через Google Chrome
  • Кеширование — сохранение данных для повторного использования

Неограниченные возможности поиска и навигации по сайту

  • Рекурсивный поиск страниц на сайтах
  • Поиск данных по HTML-тегам и их атрибутам
  • Автоматическое обнаружение ссылок пагинации (пейджера)
  • Специализированные функции для работы с HTML-таблицами
  • Преобразование HTML в текст и пары "название-значение"
  • Очистка HTML от лишних данных

Интеграция с Excel

  • Чтение данных из файлов Excel для использования в парсинге
  • Создание отдельных листов и файлов
  • Динамическое формирование столбцов для вывода результатов
  • Использование всех встроенных возможностей Excel (условное форматирование, формат ячеек)
  • Удобная панель инструментов для запуска парсинга

Работа с файлами

  • Сбор данных из файлов различных форматов (Word, XML, TXT, Excel, PDF)
  • Обработка файлов из заданных пользователем папок
  • Сохранение изображений и документов под заданными именами в настраиваемые папки

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

Более подробно всё это описано в разделе Справка по программе

Видеоинструкция
YouTube
VK Video
RuTube

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

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

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

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

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

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

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

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

Комментарии

Здравствуйте, скачал Ваш парсер и был приятно удивлен функционалом! Но у меня такая вот загвоздка, делаю парсинг ссылок с одной страницы и хочу вывести в строки excel (каждая ссылка в одну сроку) но у меня массивом все пишется в одну ячейку, вроде как и по примерам посмотрел, и сам потыкал, никак не пойму... И задача как бы элементарная и функции работы с массивами есть, но никак их не могу связать. В программирование на PHP то проще, есть циклы for, foreach, а как тут аналог реализовать не разобрался... Помогите пожалуйста!

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

PS: возможно, надо снять эту галочку (если вы её случайно поставили):
Вывод на лист — Дополнительно — Выводить массив значений в отдельные строки

У меня столбец с ссылками. Парсер проходит все эти ссылки, но сохраняет все данные в первую строку. Т.е. в конце работы парсера у меня получается одна строка, в которой стоят значения последней ссылки.
Никак не могу понять какая настройка отвечает за это. Нужно, чтобы значения которые я копирую вставлялись друг за другом построчно.
Подскажите пожалуйста

Здравствуйте, Денис
«Найти все гиперссылки» — вроде нормально работает, на десятках парсеров проверено.
Гиперссылками программа считает то, что выглядит так:

<a ... href="любая_ссылка" ...> ... </a> 

Формирование имени файла по маске, - есть. Например, можно задать маску имени файла %varname1%_anytext_%varname2%.jpg
где varname1 и varname2 — названия переменных (в которые ранее были сохранены нужные значения)

Если какие вопросы, — звоните в скайп в любое время, подскажу.

Спасибо за парсер! неделю потратил на поиск чего-то подобного, испробовал кучу сложных и тяжелых парсеров, но с вашим разобрался очень быстро.
Еще раз огромное спасибо!

З.Ы. или я кривой, или парсинг ссылок "Найти все гиперссылки" у меня не пашут, пришлось вручную вырезать )
З.З.Ы. было бы здорово немного расширить работу с файлами, а именно генерация имени по заданной маске.

Добрый день. Где можно взять инструкцию по настройке парсера для обработки сайта типа Гулливер (из ваших примеров)?

Здравствуйте. Андрей.
Скайп мой указан на странице «КОНТАКТЫ»: ExcelVBA.ru
Лучше высылайте описание с примером результата в файле Excel на почту order@excelvba.ru

Доброго времени суток,
Хотел обратиться к вам с просьбой о настройке парсера, за вознаграждение соответственно! Укажите ваш скайп, и при дальнейшем общении более детально все обсудим.

С Уважением,
Андрей

Статью исправил (спасибо, что сообщили об ошибке на сайте)

Но я говорил про другую статью (где описывается настройка программы-парсера, а не отдельный макрос)
http://excelvba.ru/programmes/Parser/manuals/Authentication

PS: программа сможет работать с десятком сайтов с авторизацией
Просто настройка в некоторых случаях может оказаться очень сложной (на всех сайтах авторизация по-разному выполняется, - например, 7 сайтов может легко получиться настроить, а с 1-2 сайтами возникнут сложности)

Когда требуется авторизация - настройка обычно сложнее (если что - проблемные сайты можем настроить под заказ)

Я так понял что речь идет про статью Авторизация на Яндексе с использованием WinHttpRequest? Если да то там нет содержимого, она пустая. Не могли бы вы подсказать где именно на сайте найти нужный материал? Дело в том что нужен парсер и который нужно заточить под десяток сайтов с авторизацией и пока не пойму сможет ли программа нормально с ними работать и как настроить, купить ее я вряд ли смогу. Спасибо.

здравствуйте
да, есть такая возможность
пока пример настройки выложен только для яндекс.маркета

Добрый вечер. Скажите, у парсера есть возможно собирать инфу с сайтов требующих авторизацию? Может быть плохо искал - но информации об этом или мануала на эту тему не нашел. Спасибо

Здравствуйте, Вячеслав.
Проблему устраню, - но только после 11 марта (сейчас в отпуске, нет возможности искать утечку памяти в программе)
Напишите мне в скайп, - разберемся.

PS: 200 строк для переполнения памяти - слишком мало
Возможно, вы перемудрили с настройкой, или какая-то проблема с конкретным сайтом. В любом случае, после 11 марта решим проблему.

Проблема с использованием памяти excel при работе парсера.

В колонке А указаны URL страниц с которых парсится информация.
Настроил парсер. Данные загружаются в соответствующие колонки, но есть проблема с использованием памяти.
С каждой следующей обработанной строкой объем памяти, которую использует excel увеличивается. В результате после обработки примерно 200 строк память переполняется, система начинает тормозить и в итоге excel завершается с ошибкой.
Т.к. я запускал парсер сначала на Mac под Parallels, потом пробовал на другом компьютере (PC). Пробовал под разными версиями MS Office (2007, 2010, 2013), то же самое.

Помогите разобраться, а то купил парсер и по сути не могу им нормально воспользоваться.
P.S. В файле всего около 10 000 URL (строк).

Здравствуйте
Поиск тегов (в т.ч. по имени класса или ID) работает корректно, - на множестве сайтов проверено.
Видимо, вы что-то не так настраиваете
Посмотрите опубликованные на сайте примеры, - там часто используется поиск тегов, - сможете убедиться, что все работает.
Могу подсказать, что как настроить, - пишите мне в скайп.
Ну или можете заказать настройку под заказ, если нет желания разбираться с настройками.

Добрый день! Решил воспользоваться вашей программой Parser, но возникли проблемы с поиском данных по тегам, собственно "Поиск по имени класса, поиск по id, по заданному тегу". На выходе в любом из вариантов выдает пустое значение. Это может быть из-за того, что код скрипта написанный вами частично или совсем не подходит для поиска данных с постороних сайтов.
Делал все по вашей инструкции, но ничего так и не удалось найти, находит только верстку всего сайта, отдельные данные по заданным именам не находит.
1. Можете объяснить в чем проблема?
2. Если не указаны на заданом сайте id и другие параметры, к примеру тегов, поиск так же не производится. Мне кажется, что у вас в скрипте заданы не верные параметры поиска к примеру "ClassName" - этот параметр указывается у вас в скрипте, на сайтах этот параметр указывается как "class". Может быть в этом проблема?
3. Пробовал искать по span параметру, но в данном параметре я не могу указать искомое имя по span. Могу только имя по классу задавать. Зачем тогда указывать в параметрах поиска данный параметр?

Cпасибо, попробую на основе Вашего примера "автомобили с пробегом" пересобрать парсер с нуля...
Скайпа дома нет, да и тимвьювер не тянет, инет только по USB модему - 3G с реальной скоростью EDGE (
...Хорошая надстройка, вот только побольше бы описания функций в справке.

Здравствуйте, Александр
Вы, видимо, где-то лишнюю галочку в настройках поставили, - из-за этого выводится ниже
По-умолчанию, данные выводятся при каждом запуске в те же самые ячейки.
И действие «Очистить лист от данных» в вашем случае не нужно (оно крайне редко используется, для сложных парсеров)
Позвоните мне в скайп, - я подключусь к вашему компу, и помогу с настройкой (там всё просто)

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

Здравствуйте! Решил попробовать разобраться с парсером. Например, с сайта http://www.gismeteo.ru/city/daily/5089/ нужно вытащить температуру в разных районах области - меняются только последние цифры в ссылках, их берем за исходное значение. Далее вытаскиваю из кода то, что нужно (самое сложное оказалось самым лёгким). Работает. Вот только при повторном запуске значения в таблице подставляются ниже, старые не стираются. Как сделать так, чтобы старые значения переписывались заново? Пробовал запускать действие "Очистить лист от данных" с параметрами FirstCell="C2"; Clean Type="ClearContens", при тестировании действий очищает как нужно, но при реальном запуске глючит - очищает и ячейки в столбцах левее столбца "С".
Пожелания:
1) В настройках вывода данных в выбранный столбец добавить возможность указания первой ячейки (строки), куда выводить первый результат.
2) В действие "Очистить лист от данных" добавить возможность указания диапазона ячеек, а не только одной верхней левой ячейки.

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

Не могли бы вы выслать готовый парсер по извлечению номеров определенных операторов (код)
и емайл.

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

Почему-то у меня после первого же действия "Загрузить страницу с приемом Cookies" вылетает ошибка Compile error in hiden module: mobBALLOON.
Весь список действий указал. При тестировании поставил флаг на Остановить обработку на выделенном действии.

Здравствуйте
Тут все от конкретного сайта зависит

Открываете в браузере инструменты разработчика (нажатием Ctrl + Shift + I),
переходите на вкладку Network (где отображаются все отправляемые запросы),
и смотрите, какой запрос с какими данными отправляется при нажатии на кнопку авторизации.

Сделал для вас небольшой пример для авторизации на Яндексе

Здравствуйте, вы не могли бы на примерt объяснить как организовать авторизацию на сайте с помощью парсера.
В общих чертах понятно, что через get и post, но вот практически не могу добиться результата.

Да, можно и вычисления выполнить.
Самый простой способ, — вывести в ячейку формулу типа =RC5/ЗначениеКурса

Здравствуйте! Скажите, а есть возможность проводить вычисления? Есть цена в рублях, а надо в отдельную колонку цену в долларах записать, взять значение в колонке 5 разделить его на курс и записать в колонку 10 новое значение. Это возможно?

Здравствуйте.
Для этого, надо создавать новую книгу не в разделе «исходные данные» (т.к. действия этого раздела выполняются столько раз, сколько исходных значений на листе),
а создавать ПРИ ЗАПУСКЕ ПАРСЕРА (вкладка ДОПОЛНИТЕЛЬНО - наборы действий - создаете там новый набор действий с именем Parser_Start, и в нём одно действие - создать новую книгу Excel)

или же, второй вариант, вместо действия «создать новую книгу Excel»,
открыть вкладку «вывод на лист», и там, на вкладке «настройки листа для вывода»,
поставить галочку «При запуске, создавать новый файл для вставки данных»

PS: Выберите один способ из 2 предложенных (оба сразу не надо)

Здравствуйте! Что-то никак не получается выводить данные в другую таблицу. Исходные данные - ссылки в 10 столбце текущей книги. Список действий на странице "исходные данные" 1 - "Создать новую книгу Excel" 2 - "Загрузить исходный код веб страницы". В результате получается куча новых книг и в каждой по 1 строке, алгоритм мне понятен при переходе на новую ссылку выполняется команда "создать новую книгу". А как сделать, что бы парсер работал согласно алгоритму: создать новую книгу, а дальше обрабатывать ссылки до конца файла. Что бы в результате получить 1 новую книгу со списком строк?