Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Table of Contents

...

После знака | нужно добавить код из текста страницы, который однозначно означает, что товар находится в требуемом наличии, указанном с помощью ИД перед знаком |

1|button>Купить
3|button>Заказать

Если указанного варианта текста не найдено на странице, то товар станет Нет в наличии

Можно наоборот, задать только текст для нет в наличии, например

2|class=”NotAvailable”

В этом случае, если найдет такой текст, то товар будет Нет в наличии, если не найден - в наличии.

ИД типа наличия можно посмотреть во вкладке Конфигурация

...

Поля для парсинга

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

...

Слева - текст html, который находится слева от вырезаемого значения со страницы. Если значение равно ###, то берется текст с самого начала страницы.

Справа - текст html, который находится справа от вырезаемого значения со страницы. Если значение равно ###, то берется текст до конца страницы.

Если Слева указано ### и Справа указана ###, то в качестве результата сохраняется вся страница.

...

Ограничить блок слева - если невозможно однозначно указать теги для вырезаемого значения, т.е. они встречаются несколько раз на странице, то можно сначала вырезать какой-то блок текст, а уже потом в этом блоке вырезать значение тегами “Слева” и “Справа”. Если при этом не указан текст в “Ограничить блок справа”, то парсер просто передвинется к тексту, указанному в “Ограничить блок слева”, и вырежет значение между блоками “Слева” и “Справа” начиная с места, куда сдвинулся.

...

Expand
titleПример

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

артикул расположен между тегами <td> и </td> , но таких тегов на странице много, соответственно нам нужно сначала вырезать блок текста, который начинается с артикула</td> и заканчивается тегом </tr>, получаем такие настройки:

Image RemovedImage Added

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

...

Шаблон - здесь указывается шаблон строки, в который подставляется значение, полученное регулярным выражением. Например следующий шаблон https://site.ru/catalog[[value]]

формирует ссылку из ее части, полученной регулярным выражением, полученное значение подставляется вместо [[value]]. Если нужно значение без изменений, то оставляйте поле пустым.

Expand
titleПример использования регулярных выражений
Code Block
languagehtml
<div class="new model">
	<p>12345<br/>7890M<p/>
</div>

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

при этом 12345 - меняющееся значение, на каждой странице разная

здесь можно ограничить блок тегами class="new model"> и </div>

и задать следующее регулярное выражение

<p>.+?<br/>(.+?)<p/>

в нем встречается текст .+? - он означает, что в этом месте может быть любой текст

а так же то же самое, только в скобках (.+?) - это означает то же любой текст, но при этом его нужно сохранить в качестве значения, полученного регулярным выражением.

Получение характеристик

Для записи характеристик желательно добавить пользовательское поле с типом Текст, но можно использовать и поле Полное описание (info).

В настройках поля нужно задать параметры, которыми будет получен полный блок текста, содержащий характеристики.

...

В колонке Шаблон указать OTH->QN

...

В колонке Дополнительно ввести настройки парсинга названия и значения характеристики из блока текста.

...

Пример характеристик в коде страницы:

...

В Дополнительно указывается 10 строк настроек:

1. Начало блока кода страницы из которого вырезается название характеристики

2. Конец блока кода страницы из которого вырезается название характеристики

3. Код перед названием характеристики

4. Код после названия характеристики

5. Начало блока кода страницы из которого вырезается значение характеристики

6. Конец блока кода страницы из которого вырезается значение характеристики

7. Код перед значением характеристики

8. Код после значения характеристики

9. Код перед названием характеристики, если не нашло название характеристики настройками 3 и 4

10. Код после названием характеристики, если не нашло название характеристики настройками 3 и 4

Настройки 9 и 10 нужны для добавления 2х вариантов получения названия характеристики.

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

...

Для получения значения характеристики нужно ввести границы текста, так как внутри находится еще ссылка на похожие товары по характеристике.

...

Само значение после этого из текста можно получить между символами ><

...

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

Пример:

...

Строку 7 нужно начать со слова “REGEXP “ - с пробелом между словом и регулярным выражением.

В строке 8 можно ввести любой текст или пусто.

...

Результат:

...

Множественные значения записываются через запятую.

Колонка Дополнительно

В этой колонке может быть следующие параметры:

1. Настройки парсинга характеристик из текста

2. Тег “UPFIRST” - в полученном результате первая буква будет сделана заглавной

3. Тег “FROMRIGHT” - при поиске информации ограниченной настройками слева и справа сначала будет найден текст который справа, и потом от этой позиции найден текст слева, первое его вхождение перед найденным справа текстом.

4. Тег “REMURL“ - из текста, полученного парсером, удаляются следующие теги: <a>, <img>, <iframe> и все что между тегамиТолько цифры - если установлена данная птичка, то полученный текст преобразуется в число (из текста убираются все буквы, остаются только цифры и разделитель дробной части).

Значение по-умолчанию - устанавливается в случае, если на странице для поля получено пустое значение. Если оставить все остальные настройки для поля пустыми, то это значение будет устанавливаться всегда. Можно использовать, например, чтобы задать ИД валюты.

...

Удалить теги - если установлена данная птичка, то из полученного для поля текста удаляются все html-теги.

Проверка - если установлена эта птичка, то в полученном значении для поля будет сделан поиск искомого текста (из вкладки Результаты, колонка “Поиск”) и если текст не найден, то для товара будет установлена ошибка, результаты парсинга этого товара не будут сохранены.

...

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

...

Использовать данный функционал имеет смысл только при поиске по Модели товара или если заранее известно, что ваше название является частью названия на сайте, откуда идет парсинг.

Колонка “Сохранить” - здесь можно указать числа от 1 до 5 для дополнительного сохранения информации, полученной для поля, чтобы ее можно было увидеть в результатах парсинга.

...

Цифра соответствует колонкам “Значение 1-5”. Сохранить таким образом можно информацию из любого поля.

...

Note

При парсинге по категории в Значение 1 всегда сохраняется Название товара.

Колонку “Значение 1” можно так же использовать для того, чтобы парсер заново не парсил товары, которые были обработаны ранее и получили уже Значение 1. Для этого нужно в настройках парсера поставить эту птичку:

...

Колонка Замены

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

...

[[value]] - в это место шаблона подставляется значение, которое получено парсером. Например, по каким-то причинам вы не можете парсером получить целиком текст ссылки, а только часть ссылки, без адреса сайта (например, “/category/product1.html”) в этом случае полную ссылку можно сформировать по такому шаблону: https://testsite.ru[[value]]

...

Колонка Папка для файлов

Здесь указывается путь к папке в которую будут скачиваться файлы (фото) по ссылкам, полученным в результате парсинга поля. Если путь не указать, то файлы скачиваться не будут, а только сохраняться ссылки. Если сайт вас не банит, то лучше не скачивать фото парсером, а скачивать их через программу Quad.X заданием Обработка фото и описаний - так не придется скачиваться фото на все товары, которые парсятся, а будут скачаны только те, у которых, например, еще нет фото, или по каким-то другим условиям.

...

Как видно из примера, путь указывается к папке Quad Solutions\files\5_ image\pars - она у вас создана по умолчанию, в этой папке нужно добавить подпапку, в которую сохраняются файлы, подпапка должна обязательно называться по следующему правилу:1.

  1. начало названия - слово

site2.

  1. в конце названия -

ИД прайса, в который сохраняются результаты

...

Бывают случаи, когда вам в одно поле, например Описание, нужно сохранить несколько блоков текста со страницы парсинга, или если по каким-то тегам на странице нет информации, то попробовать найти по другим тегам - для этого используется настройка в колонке Объединить.

Получение характеристик

Для записи характеристик желательно добавить пользовательское поле с типом Текст, но можно использовать и поле Полное описание (info).

В настройках поля нужно задать параметры, которыми будет получен полный блок текста, содержащий характеристики.

...

В колонке Шаблон указать OTH->QN

...

В колонке Дополнительно ввести настройки парсинга названия и значения характеристики из блока текста.

...

Пример характеристик в коде страницы:

...

В Дополнительно указывается 10 строк настроек:

1. Начало блока кода страницы из которого вырезается название характеристики

2. Конец блока кода страницы из которого вырезается название характеристики

3. Код перед названием характеристики

4. Код после названия характеристики

5. Начало блока кода страницы из которого вырезается значение характеристики

6. Конец блока кода страницы из которого вырезается значение характеристики

7. Код перед значением характеристики

8. Код после значения характеристики

9. Код перед названием характеристики, если не нашло название характеристики настройками 3 и 4

10. Код после названием характеристики, если не нашло название характеристики настройками 3 и 4

Настройки 9 и 10 нужны для добавления 2х вариантов получения названия характеристики.

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

...

Для получения значения характеристики нужно ввести границы текста, так как внутри находится еще ссылка на похожие товары по характеристике.

...

Само значение после этого из текста можно получить между символами ><

...

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

Пример:

...

Строку 7 нужно начать со слова “REGEXP “ - с пробелом между словом и регулярным выражением.

В строке 8 можно ввести любой текст или пусто.

...

Результат:

...

Множественные значения записываются через запятую.

Колонка Дополнительно

В этой колонке может быть следующие параметры:

1. Настройки парсинга характеристик из текста

2. Тег “UPFIRST” - в полученном результате первая буква будет сделана заглавной

3. Тег “FROMRIGHT” - при поиске информации ограниченной настройками слева и справа сначала будет найден текст который справа, и потом от этой позиции найден текст слева, первое его вхождение перед найденным справа текстом.

4. Тег “REMURL“ - из текста, полученного парсером, удаляются следующие теги: <a>, <img>, <iframe> и все что между тегами

Как тестировать парсер?

1. После настройки парсинга