8-900-374-94-44
[email protected]
Slide Image
Меню

Модуль парсер – Битрикс — Сотбит: Парсер контента – сайты, excel, xml, yml, csv, rss

Drupal: Модуль Parser — парсинг сайтов

Описание

Модуль Parser предназначен для парсинга любых html страниц в сущности (ноды, термины, юзеры и т.д.). Собственно на этом описание модуля можно закончить =)

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

Использование

Сразу хочу предупредить, что без знаний php работать с модулем будет крайне затруднительно.

Задания парсера находятся по адресу admin/structure/parser_jobs. По умолчанию там есть только одно — Парсинг шаблонов с drupal.org, которое можно использовать как мануал.

Как начать парсить сайт:

  1. Создаём задание admin/structure/parser_jobs/add.
  2. В поле Стартовый URL указываем начальный адрес. С него парсер начнёт работу.
  3. В поле URL тестовой страницы указываем адрес любой страницы, которая в будущем будет распарсена в ноду. HTML код этой страницы будет использован в качестве полигона.
  4. В поле Глубина указываем глубину, до которой парсер будет шагать по найденным ссылкам (простыми словами, глубина — это количество кликов, которые надо сделать относительно страницы указанной в Стартовый URL, чтобы добраться до страницы с контентом).
  5. Заполняем белый и чёрный список адресов.
  6. В поле Код проверки для дальнейшего парсинга страницы пишем код, который должен вернуть TRUE, если текущая страница попадает под условие "распарсить страницу в ноду".
  7. Указываем тип сущности, которая будут создаваться модулем.
  8. Для каждого поля пишем php код, возвращающий значение поля. В коде можно использовать весь функционал библиотеки phpQuery, парсинг с которой превращается в удовольствие 🙂 С помощью кнопок "проверить" смотрим результат работы кода.
  9. Делаем полный бэкап базы и файлов! При неправильной конфигурации модуль может насоздавать много лишних нод.
  10. Начинаем парсинг.

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

Скриншот 1
Скриншот 2
Скриншот 3

— Скачать модуль
— Пример парсинга сайта drupalsn.ru

Написанное актуально для Parser 7.x-2.x Похожие записи

xandeadx.ru

ParseMX – парсер для автоматического импорта и синхронизации OpenCart с сайтами

ParseMX переносит данные товаров с других сайтов в ваш магазин на базе OpenCart. Он легко настраивается и автоматически делает всю работу – обновляет цены, добляет новые и отмечает пропавшие товары.

Скачать   Посмотреть видео   Обсудить   Внимание! При большом количестве товаров обычно магазин начинает тормозить. Попробуйте модуль OpenCart Lightning для мгновенного показа страниц.

ParseMX используют для:

  • cинхронизации с сайтами поставщиков (если у них нет адекватного API)
  • локальных представительств крупных торговых площадок
  • переноса магазина со старой платформы на OpenCart
  • мониторинга цен конкурентов
  • разныx витиеватых сценариев (ParseMX очень гибкий)
Что умеет интересного:
  • создавать инструкции в полу-автоматическом режиме
  • копировать структуру категорий
  • замывать водяные знаки
  • переводить тексты с помощью Google Инструменты Переводчика или Яндекса
  • поддерживает все поля продукта (включая h2, title и SEO URL)
  • обрабатывает опции и атрибуты
  • умеет вводить логин и пароль где необходимо
  • искать и использовать прокси
  • автоматически распределять товары по категориям по ключевым словам
Ну и самое главное - короткие и доступные пониманию инструкции для разбора сайтов

Что с ним делать? Сначала установить:

  • Разархивировать в папку магазина (что бы parsemx оказалась в корне).
  • Установить права для папки parsemx и всех её файлов на запись (chmod 777)
Если у вас установлен vQmod, то ParseMX появится в меню Каталог.
Если нет, то для управления парсером заходите на http://ваш_магазин.ru/parsemx (предварительно залогинившись в админку).

Что дальше?

Что же, заходим в парсер и видим там в качестве донора магазин books.devs.mx. На нём можно потестировать, как работает автоматический парсинг. Также можно пробовать менять его инструкцию и смотреть на результат.

Наигравшись, приступаем к тому, ради вы его скачали - к "щупанью" своего донора. Создаем нового донора - и вводим там интересующий сайт.

Видео о работе с мастером инструкций

А в чём подвох?
Естественно, бесплатный сыр только в мышеловках. Вы сможете потестировать обработку одного товара на вашем доноре - но не сможете запустить автоматический парсинг. Вот информация о лицензировании и ценах - http://parsemx.com/license.html

Внимание! В связи с очень большой загрузкой, техническая и информационная поддержка осуществляется только для клиентов с активной лицензией. Для остальных могу предложить только консультации вида это можно сделать после покупки лицензии / это нельзя сделать / это можно сделать только в рамках настройки "под ключ".

parsemx.com

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

Станислав Шашалевич

03 февраля 2014

Модуль «Парсер контента» с версии 4.0.0. "научился" парсить каталоги, что значительно расширяет его функциональность. Но и настройка самого парсера в режиме каталога стала на первый взгляд сложнее. Но это лишь на первый взгляд. Данная инструкция разрушит все ваши сложности и возникшие вопросы. И так. Поехали!

Внимание!!! Чтобы работа с парсером была легкой и простой, необходимо знать азы верстки и css, а именно селектора: классы, идентификаторы, атрибуты. Так же будут полезны базовые знания работы с JQuery, например: .image img:eq(0). Без этих базовых знаний нет смысла читать далее! Если вы еще не знаете таких понятий, то с ними можно легко ознакомиться по ссылке: http://habrahabr.ru/post/123949/

Парсер в режиме каталога состоит из 13 вкладок при установленном модуле Торговый Каталог, в ином случае - из 11, т.к. вкладка Торговый каталог и Торговые предложения отсутствуют.

Теперь рассмотрим каждую вкладку подробнее.

Основная и вкладка по-умолчанию - Парсер:

Тип парсера – соответственно и есть тип парсера. На данный момент это rss, page, catalog. Нас же интересует catalog.

Внимание! Если не использовать вкладку Торговый каталог, то парсер будет просто работать в расширенном режиме парсинга без создания товаров. Удобно для парсинга сложных новостных страниц или статей.


Режим парсера – режим, в котором работает парсер. Существует два режима работы: debug и work. По умолчанию для отладки используется debug режим. Именно в этом режиме необходимо настраивать парсер. В дебаг режиме парсится три страницы и по три товара с каждой страницы. В рабочий режим work парсер необходимо переводить, если он полностью настроен и отлажен.

Стоит отметить, что, если вы используете модуль «Парсер контента» в триал версии, то парсер работает только в дебаг режиме.

URL раздела каталога – страница, содержащая непосредственно товары.

Дополнительные урлы разделов - вы можете также включить в выгрузку и другие урлы. Для этого просто укажите их с новой строки.

ID инфоблока-каталога – инфоблок, в который будет осуществляться загрузка товаров.

ID раздела – раздел инфоблока, в который будет осуществляться загрузка товаров.

Количество товаров, выгружаемых за один шаг парсера

– количество товаров, который парсер обрабатывает за один шаг.

Шаг парсера – понятие, которое имеет место при ручном режиме запуска парсера. В этом случае каждый шаг происходит отключение и новое подключение к каналу выгрузки. Варьируйте это значение в зависимости от возможностей вашего хостинга. Если парсер работает от агента(крон), то шаг парсера игнорируется и выгрузка осуществляется одним запросом.

Активен, Сортировка, Название, Время последнего запуска – интуитивно понятные поля и в комментариях не нуждаются.

Кодировка - кодировка сайт донора. Устаревшее поле. На данный момент кодировка определяется автоматически, но, если возникают какие-то проблемы с кодировкой, то рекомендуется указать в ручную.

Вкладка Постраничная навигация:

Селектор навигации – селектор контейнера навигации.

Селектор пункта навигации – селектор пункта навигации, содержащий ссылки на страницы. Как правило это элемент ссылки a. Указывается относительно предыдущего параметра.

Удалить элементы навигации –

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

На картинке ниже подробная схема селекторов Пагинации.

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

Вкладка превью:

Селектор товара на странице каталога – селектор контейнера товара на странице списка товаров.

Селектор ссылки товара – как правило, обычная ссылка a, содержащая атрибут href. Если пусто, то используется a:eq(0), то есть первая ссылка. Указывается относительно предыдущего параметра.

Селектор названия товара – селектор, в котором содержится название товара. Если пустое, то равно предыдущему параметру.

Селектор превью описания – селектор, в котором содержится превью описание товара.

Селектор цены – селектор, в котором содержится цена товара.

Удалять элементы

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

Удалять атрибуты элементов – атрибуты элементов, которые необходимо удалить. Пример написания: a[href], a[rel].

Селектор-атрибут превью картинки – указывается селектор и атрибут превью картинки. Пример: img[src], a[href]

Вкладка Детально:

Поля аналогичны полям во вкладке Детально. Поэтому подробно рассматривать не будем.

Вкладка Свойства:

Свойство доп. картинок – если есть доп. картинки, то необходимо указать поля, в которые будет осуществляться выгрузка картинок.

Селектор-атрибут перечисления доп. картинок – указывается селектор и атрибут доп. картинок. Пример .images img[src]. Указывается относительно селектора товара на детальной странице.

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

Удалять символы – удаляются символы из свойств, описанных выше. Как правило, это двоеточия, запятые, многоточия и подобное.

Парсинг свойств по названию из деталки – требует более детального описания. Парсинг свойств в этом случае осуществляется по селектору списка свойств и по названию свойства из детальной страницы товара.

Селектор перечисления свойств – общий селектор свойств в списке.

Удалять символы – удалять лишние символы, такие как: запятые, двоеточия, многоточия и подобное.

Еще необходимо указать названия свойств. Именно по этому названию и общему селектору будет производиться парсинг свойств.

Парсинг свойств по селектору из превью - поле аналогичное для деталки, но только селектора указываются относительно селектора товара в списке товаров.

Парсинг свойств по названию из превью – поле аналогичное для деталки, но только селектора указываются относительно селектора товара в списке товаров.

Хочу обратить внимание, что на данный момент возможен парсинг свойств только типов: строка, число, список, привязка к элементам, справочник, html, файлы. Множественность не поддерживается.

Также, возможно создать новое свойство прямо из интерфейса парсера. Для этого необходимо в селекте выбрать значение [Создать] и нажать кнопку добавить.

Вкладка Торговый каталог(если установлен модуль Торговый каталог):

Тип цены, Ставка НДС, Включать НДС в цену, Валюта, Единица измерения, коэффициент единицы измерения – эти поля интуитивно понятны и не требует дополнительного разъяснения.

Работа с ценами – предоставляется возможность работы с ценами: конвертация, округление цены, формат цены, изменение цены.

Конвертировать в валюту – в какую валюту необходимо конвертировать цену.

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

Формат цены - если цена имеет сложные разделители, например 5.990,00 . В этом случае вы должны указать символы разделителей. В большинстве случаев можно оставить пустым.

Изменить цену – возможные значения: Не изменять, Увеличить, уменьшить.

Условие изменения цены – обозначается условие, при выполнении которого будет изменена цена. Словесный пример: Увеличить цену, если цена выше 600. 600 – цена в исходной валюте.

Тип изменения – возможные варианты: Проценты и Абсолютная величина. То есть изменения цены будет в процентном соотношении или в абсолютной величине.

Величина изменения – величина изменения цены. Указывается в зависимости от предыдущего поля.

Парсинг размеров по селектору – логика аналогична логике парсинга свойств из вкладки Свойства.

Парсинг размеров по названию – логика аналогична парсингу свойств из вкладки Свойства.

Вкладка Торговые предложения(если установлен модуль Торговый каталог):

Выгружать офферы - выбор типа выгружаемых торговых предложений. На данный момент поддерживается два вида: Табличный вид и Офферы с одиночными характеристиками.

Офферы табличного вида

Параметр уникализации – важный параметр, определяющий по каким параметрам будет происходить уникализация офферов. 
Особенности: 
1. Указанные свойства добавляются в название оффера. 
2. Если название оффера отсутствует, то название полностью будет состоять из значений указанных свойств. 
3. По данному параметру происходит уникализации офферов. 
4. Если ничего не указано, то уникальность будет определяться по названию оффера.


Главный селектор контейнера торговых предложений – селектор контейнера офферов относительно селектора детальной страницы. Например: table. 


  
Селектор блока шапки таблицы – селектор шапки таблицы относительно предыдущего параметра. Это поле требуется, если поиск параметров идет по названию. Например: thead tr 


  
Селектор наименования параметра в шапке таблицы – селектор конкретного наименования параметра относительно предыдущего параметра. Это поле требуется, если поиск параметров идет по названию. Например: th 

Селектор отдельного оффера – селектор блок торгового предложения относительно главного селектора офферов. Например: tbody tr 

Селектор значения параметра в теле таблицы – селектор конкретного значения параметра относительно предыдущего параметра. Например: td 


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

Офферы с одиночными характеристиками

Параметр уникализации – см. выше. 
Селектор контейнера отдельной характеристики оффера  - если выбор оффера осуществляется кликом по блоку, то нужно указать селектор как раз этого блока. Пример: select option, #charect div.size


Атрибут цены – атрибут предыдущего параметра(селектора). Используется, если цена заносится в атрибут.

 

Вкладка Дополнительные настройки:

Парсить при возникновении 404 ошибки – при парсинге страниц в случае возникновения 404 ошибки продолжать парсинг. Пункт актуален из-за СЕО заморочек.

Запускать по агенту – запуск парсера по агенту. Рекомендуется агенты запускать из под крона.

Время задержки(сек) – время между запросами к страницам каталога. Иногда сайты используют контроль активности за единицу времени. Этот пункт как раз позволяет обойти вышеуказанный контроль.

Прокси-сервер – адрес прокси-сервера, через который будет осуществляться парсинг. Применяется для сохранения анонимности.

Остальные поля интуитивно понятны и не требуют разъяснения.

Вкладка Обновление/Уникальность:

Обновлять товары – чекбокс, который включает и выключает обновление товаров.

Проверка уникальности – изначально для уникализации использует поле XML_ID, в которое заносит md5 от названия товара и урла страницы товара. Если вы не хотите заполнять и перетирать поле XML_ID, то необходимо переопределить уникализацию. Например, вы можете уникализировать по названию или свойству(Артикул), либо по тому и другому по логике И.

Обновлять поля – позволяет выбрать поля, которые необходимо обновлять. Так же существуют условия обновления полей. К примеру, обновлять Детальное описание, если оно пустое.

Теперь появилась возможность отслеживания товаров выгруженных в текущей и прошлой выгрузке. Для этого во вкладку «Обновление / Уникальность» добавились доп. поля. 
  
Существует три значения данного режима: 
- ничего не делать – если товар отсутствует в текущей выгрузке, то с ним ничего происходить не будет 
- деактивировать – если товар отсутствует в текущей выгрузке и присутствовал в предыдущей, то он будет деактивирован 
- удалить – товар будет удален, если он отсутствует в текущей выгрузке

Вкладка Авторизация:

Производить авторизацию на стороннем сайте - если необходимо парсить сайт из под авторизованного пользователя, то необходимо отметить это поле.

URL авторизационной страницы - если авторизацию происходит на отдельной странице, то необходимо заполнить данное поле. По умолчанию идет страницы раздела, которые собираемся парсить.

Селектор формы авторизации - селектор формы авторизации. Пример на картинке ниже:

Логин - логин на стороннем сайте.

Пароль - пароль на стороннем сайте.

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

Вкладка Логи:

На данном этапе осуществляется простое логирование ошибок в файл последней выгрузки. Вкладка Сервисы.

Перевод текста


Тип перевода - выбор сервиса, который будет отвечать за перевод текста. На данный момент реализован только Яндекс.Переводчик.

Параметры для Яндекс.Переводчика

Ключ от API Яндекс.Переводчик - ключ, позволяющий пользоваться API Яндекс.Переводчика. Его вы можете получить совершенно бесплатно по адресу: https://tech.yandex.ru/keys/get/?service=trnsl

Направление перевода - в каком направлении будет осуществляться перевод текста. Языки разделяются тире. Пример: en-ru

Отправлять уникальный текст в Яндекс

Выбрать домены - выбрать домен, относительно которого будет отправляться уникальный текст в Яндекс.

Вкладка Видео-инструкция.

Предоставлена видео-инструкция, что облегчит понимание работы и настройки Парсера.

Данная инструкция будет поддерживаться в актуальном состоянии и обновляться по мере развития модуля «Парсер контента».

Компания «Сотбит» работает для Вас.

www.sotbit.ru

Drupal: Пример парсинга сайта drupalsn.ru с помощью модуля Parser

Пример, на котором покажу, как с помощью модуля Parser, можно за 45 секунд спарсить контент сайта DrupalSN 🙂

Открываем admin/structure/parser_jobs и жмём ссылку Add job parsing.

Заполняем основные поля:
Название задания — Парсинг постов с drupalsn.ru
Стартовый URL — http://drupalsn.ru/
Парсить только с этого же домена — Да

В поле URL тестовой страницы указываем пример типичной страницы с контентом — http://drupalsn.ru/blogs/modules/350.

В поле Глубина указываем 2, это максимальная глубина ссылок по которым нужно пройтись вглубь, чтобы спарсить все посты сайта. Т.е. логика такая — модуль скачает страницу указанную в поле Стартовый URL, найдёт на ней ссылки и скачает страницы по этим ссылкам (это будут страницы с глубиной 1), дальше для каждой страницы алгоритм повторится (это будут страницы с глубиной 2) и на этом работа парсера закончится. Таким образом мы скачаем главную, посты расположенные на главной, страницы на которые ссылается пагинатор и посты на этих страницах. Кто хоть раз пользовался Teleport Pro, должен помнить такую опцию при создании проекта.

Если парсер запускается в первый раз, то можно ограничить количество создаваемых нод в поле Ограничить число нод например пятью. Это позволит не ждать копирование всего сайта, так как процесс прервётся после создания пятой ноды.

В белом списке адресов указываем маску адресов, по которым располагаются посты — http://drupalsn.ru/blogs/*/* и страницы, имеющие ссылки на посты — http://drupalsn.ru/blogs?page=*.

Чёрный список оставляем пустым. Он нужен, когда необходимо закрыть адреса, которые подпадают под белый список, например в нём могло быть что нибудь типа http://drupalsn.ru/blogs/*/*/comments.

В поле Код проверки для дальнейшего парсинга страницы нужно написать код, который однозначно скажет — эту страницу нужно распарсить в ноду. Т.е. нужно по каким то признакам в html коде, опознать страницу с постом. На DrupalSN таким признаком является класс node-type-blog у тега body:

Код с использованием библиотеки phpQuery будет:

return $doc->find('body.node-type-blog')->length() == 1;

Или на чистом php:

return strpos($page, 'node-type-blog') !== false;

Проверяем код с помощью кнопки "проверить" над полем ввода:

Если выводится 1, то двигаемся дальше.

Выбираем тип материала — Article и язык und.

В филдсете Поля, в поле title, пишем код, который вернёт заголовок поста. Заголовки на DrupalSN заключены в тег h3 с классом page_title:

Значит код будет:

return $doc->find('h3.page_title')->text();

Без phpQuery пришлось бы поработать с помощью preg_match, как-нибудь так:

if (preg_match('#<h3>(.+)</h3>#', $page, $matches)) {
  return $matches[1];
}

Жмём кнопку проверить и двигаемся дальше:

Сам текст поста обёрнут в два div-a с классами node_content и _blank:

Следовательно код для поля body будет:

return $doc->find('.node_content ._blank')->html();

Проверяем:

Теги обёрнуты в div с классом node_tage:

Так как тегов может быть больше одного, то в поле field_tags нужно возвращать массив:

$terms = array();
foreach ($doc->find('.node_tags a') as $a) {
  $terms[] = pq($a)->text();
}
return $terms;

Проверяем:

Вот и всё. Жмём Сохранить задание и Начать парсинг и наслаждаемся результатом:

P.S: ни в коем случае не поощряю воровство авторского контента.

Написанное актуально для Parser 1.x Похожие записи

xandeadx.ru

Модуль Parser KinoPoisk DLE 8.0-10.2


Parser KinoPoisk for DLE - это модуль DLE 8.0-10.2, для парсинга фильмов, сериалов... с сайта кинопоиск + умеет парсить дополнительную информацию с трекера rutor, katushka, fast-torrent.

Что умеет парсер:

1. Умеет парсить список фильмов при нажатии на Enter!

2. Парсит полностью все данные фильма с кинопоиска: Название, Название зарубежное, Год, Количество сезонов (если сериал), Страна, Слоган, В ролях, Роли дублировали, Режиссер, Сценарий, Продюсер, Оператор, Композитор, Художник, Монтаж, Жанр, Бюджет, Сборы в США, Сборы в мире, Сборы в России, Премьера (мир), Премьера (РФ), Релиз на DVD, Релиз на Blu-Ray, Зрители, Рейтинг MPAA, Возраст, Продолжительность, Описание фильма, Ключевые слова фильма, Студии, Рейтинг КиноПоиск + количестов проголосовавших, Рейтинг IMDB + количестов проголосовавших, ID фильма, Продолжительность трейлера, Знаете ли вы, что, Рецензии...

3. В общем все настройки парсера кинопоиск лучше показать на скриншоте.

4. В парсере есть синонимайзер для описания фильма и для раздела Знаете ли вы, что.

5. Шаблон парсера настраивается как угодно. В том числе парсер может заполнять те поля которых нету в DLE.

6. После парсинга парсер может заполнить категории автоматически по жанру фильма.

7. Изображения

Можно выбрать постер перед парсингом

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

Удалять старые изображения и торрент файлы при парсинге в новости. Данную функцию можно отключить. К примеру: при добавлении новости Вы спарсили фильм "Мумия" и потом по не предвиденным причинам захотели спарсить "Аватар". Чтоб не лезть в загрузчик DLE и не удалять в ручную изображения, за вас парсер все сделает.

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

Еще раз напоминаю что парсинг торрент раздач можно отключить в админке или пропустить!
Загрузка торрент файла совместима с модулем Tracker for DLE
Установка модуля занимает всего одну минуту.
Если вдруг вас забанили на каком то трекере или на кинопоиске то можно включить в админ панели Proxy: https или socks5

Автор: czart
Версия DLE: с 8.0 по 10.2
Альтернативное название: Парсер КиноПоиск для DLE
Технические требования
- IonCube Loader 4.0.5+
- Curl

Внимание! У Вас нет прав для просмотра скрытого текста.

dle

flesha.ru

Глобальное обновление модуля «Парсер контента» до версии 4.0.0

Станислав Шашалевич

04 февраля 2014

Компания «Сотбит» анонсирует глобальное обновление модуля «Парсер контента» до версии 4.0.0. Теперь модуль умеет парсить не только rss каналы и новостные страницы, но и каталоги.

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

Перво-наперво было решено реализовать функционал парсинга каталога товаров. Ведь не зря 1С-Битрикс уже занимает львиную долю всех интернет-магазинов России, так еще они заявляют о своих намерениях стать лучшей e-commerce системой в мире. И мы им в этом поможем и примем непосредственное участие. Начало уже положено!  К тому же, компания «Сотбит» специализируется как раз на решениях для интернет-магазинов. Поэтому не реализовать парсинг товаров в ближайшее время было бы глупостью и большой ошибкой.

Работа началась еще в конце 2013 и продолжилась уже в новом 2014 году. Ниже будут приведены трудности, с которыми мы столкнулись в процессе разработки.

1.       Проработка визуальной части и логики работы

Как оказалось, немало времени потребовалось именно на проработку визуальной части и самой логики работы. Ведь именно от этой части зависит: как простота работы с парсером, так и его стабильность и надежность.

2.       Пошаговый режим работы

Выяснилось, что если на странице много товаров, то парсер просто мог положить сервак. Нас это явно не устраивало. Поэтому пришлось ввести не просто постраничную пошаговость, но еще и потоварную.

3.       Отладка и тестирование

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

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

Так что теперь парсинг может парсить:

- каталоги(цены, картинки, свойства)

- новости

- статьи

- rss ленты

 

Функциональные возможности парсера:

1.       Парсинг цен, картинок, свойств

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

3.       Возможно обновления всех или пустых полей(Описания, картинки)

4.       Возможность конвертации цен в нужную валюту

5.       Возможность изменения цен в зависимости от условий

6.       Возможность подсоединения через прокси-сервера.

 

Предназначение и преимущества парсинга:

1. Загрузка партнерских каталогов со сторонних сайтов.
2. Перенос сайта с других платформ на платформу 1С-Битрикс.
3. Быстрое наполнение сайта контентом и соответственно быстрый запуск продаж.
4. Оперативность. Для новостных порталов счет идет на минуты, вы получите секунды. Новостник отследит и запостит свежую новость не менее, чем за час. «Парсер контента» сделает это за секунды.
5. Многопоточность. Качать контент с сотен сайтов одновременно в режиме реального времени?! Не проблема. «Пасрер контента» позволяет создавать неограниченное число потоков.
6. Привлечение посетителей. Свежая и актуальная информация привлечет и удержит посетителей на вашем сайте, что повысит его прибыльность.
7. Экономия на контент-менеджере. Основную работу сделает парсер. Заставьте контент-менеджера работать эффективно!
8. Быстрота. Заполнение 10000 позиций товара. Контент-менеджер справится с данной задачей за 3 месяца, «Парсер контента» - за 3 часа!!!

Что планируется реализовать в будущем:

1.       XML парсинг. Скоро парсер научится парсить и xml выдачу сайтов в различном формате.

2.       Парс-паук. На данный момент необходимо указать непосредственно раздел с товарами, чтобы парсинг шел успешно. Мы планируем разработать паука, который сам будет искать товары по всему каталогу.

3.       Парсинг товаров по определенному фильтру. Например, указываете ключевые названия, и парсер находит, и парсит только нужные товары.

4.       Автоматическое создание настроенного парса для ЯндексМаркета, Амазона и подобных ресурсов.

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

6.       Отправка уникального текста в Яндекс.

Модуль «Парсер контента» вышел на новый виток развития и будет продолжать радовать своих клиентов и дальше. А компания «Сотбит» сделает все для этого.

www.sotbit.ru

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *