Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

Recommended Posts

Доброе утро!

 

Возникло несколько вопросов в процессе организации парсинга в csv:

 

1) Какое выражение можно/нужно построить, чтобы в проверке границ можно было использовать несколько значений, чтобы хотя бы одно из значений перечисленных в поле "С чем сравнивать"? 

Пример: мне нужны в таблице только товары от условных производителей Один и Два. По факту же производителей гораздо больше. 

 

Спойлер

1466167231_2021-03-1708_04_52.thumb.png.8e72b815e2bc0de88c531c991d08ea37.png

 

2) Подзапутался с "Границей проверки" в части понимания работы настройки "Когда проверять". Мне нужно, чтобы файл csv формировался на регулярной основе (раз в сутки) по крону. Если я выбираю "Добавление и обновление" - в таблицу идут все товары без учета проверки границы. Проверка границы работает только при выставлении поля "Когда проверять" в "Парсинг в csv". Не совсем понимаю логику. Мне нужно первичный парсинг провести в режиме "Парсинг в csv" и затем уже для крона переключиться в режим "Добавление и обновление"? Для меня, как для обывателя, "парсинг в csv" равняется "добавление".

 

Спойлер

301175006_2021-03-1708_09_35.thumb.png.bf57c9c31bcb4d14e4fc93b75cb1b13a.png

 

3) В таблице в строку товара необходимо ввести "интеллектуальную" ячейку доставка с условием: если граница {цена} больше определенной суммы значение ячейки равно 0, а если меньше или равно определенной суммы значение в таком случае равно 300 руб. Каким образом это можно организовать? Хотелось бы это сделать "на лету", чтобы после формирования файла CSV  не нужно было прописывать формулы руками.

 

Спойлер

1536409035_2021-03-1708_16_01.thumb.png.b5ab64ae2f42bad85ae8f72ff57434f3.png

 

Заранее благодарен

Змінено користувачем lerand
Надіслати
Поділитися на інших сайтах


7 часов назад, Ayvars сказал:

К примеру, если в границах есть «в наличии», указывай - в наличии...

В поиске/замене можно хоть слона на моську поменять.

  • +1 1
Надіслати
Поділитися на інших сайтах


7 часов назад, Ayvars сказал:

Добрый день! 

У сайта-донора наличие товара в магазине указывается в трех строках, к примеру(скрин прикладываю):

склад 1 - в наличии 

склад 2 - нет в наличии 

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


К сожалению, не нашёл информации. Парсер умеет работать с условиями? 
К примеру, если в границах есть «в наличии», указывай - в наличии...

 

Спасибо!

B4ADDED2-E589-499B-BADA-12A98CF62B82.jpeg

http://prntscr.com/10nucu9   А дальше работаете уже с цифрами, как угодно. http://prntscr.com/10nueag

Змінено користувачем partshez
  • +1 1
Надіслати
Поділитися на інших сайтах


1 час назад, lerand сказал:

1) Какое выражение можно/нужно построить, чтобы в проверке границ можно было использовать несколько значений, чтобы хотя бы одно из значений перечисленных в поле "С чем сравнивать"? 

Пример: мне нужны в таблице только товары от условных производителей Один и Два. По факту же производителей гораздо больше. 

 

  Скрыть контент

1466167231_2021-03-1708_04_52.thumb.png.8e72b815e2bc0de88c531c991d08ea37.png

Загрузить если. РАВНО используется только для цифр. Для букв, слов используем Содержит или Не содержит. У Вас правило на скрине работать не будет.

1 час назад, lerand сказал:

В таблице в строку товара необходимо ввести "интеллектуальную" ячейку доставка с условием: если граница {цена} больше определенной суммы значение ячейки равно 0, а если меньше или равно определенной суммы значение в таком случае равно 300 руб. Каким образом это можно организовать? Хотелось бы это сделать "на лету", чтобы после формирования файла CSV  не нужно было прописывать формулы руками.

Поиграться с Наценкой. Типа, (0-5000)=300...  (5000-999999999)=0

Точно не знаю, но алгоритм такой я бы попробовал

Или округление  https://simplepars.top/index.php?page=note&n=5

 

Змінено користувачем partshez
Надіслати
Поділитися на інших сайтах


3 минуты назад, partshez сказал:

Загрузить если. РАВНО используется только для цифр. Для букв, слов используем Содержит или Не содержит. У Вас правило на скрине работать не будет.

 

Правило на скрине работает... Другой нюанс, что кроме производителя TOR, мне нужен и еще один производитель...

 

4 минуты назад, partshez сказал:

Поиграться с Наценкой. Типа, (0-5000)=300...  (5000-999999999)=0

Точно не знаю, но алгоритм такой я бы попробовал

 

Логику я понимаю :) Я не знаю, как синтаксически это выразить...

Надіслати
Поділитися на інших сайтах


1 час назад, lerand сказал:

1) Какое выражение можно/нужно построить, чтобы в проверке границ можно было использовать несколько значений

 

{reg[#одушк|остель|деял|плед|окрывал|простын#ui]}

 

Вот прям сейчас делаю такое

  • +1 1
Надіслати
Поділитися на інших сайтах


1 час назад, lerand сказал:

1) Какое выражение можно/нужно построить, чтобы в проверке границ можно было использовать несколько значений, чтобы хотя бы одно из значений перечисленных в поле "С чем сравнивать"? 

Пример: мне нужны в таблице только товары от условных производителей Один и Два. По факту же производителей гораздо больше. 

Здравствуйте.

Берем границу парсинга, и все значение что вам нужно.
И в поиск замене делаем все нужные вам значения заменяем на цифру один (1)
А в проверке границы проверяем если в границе стоит цифра один значит все хорошо грузим, если что то другое пропускаем.
Таким образом вы можете парсить по определенному списку, этот списко задается в границе в поле поиск замена.

 

2 часа назад, lerand сказал:

2) Подзапутался с "Границей проверки" в части понимания работы настройки "Когда проверять". Мне нужно, чтобы файл csv формировался на регулярной основе (раз в сутки) по крону. Если я выбираю "Добавление и обновление" - в таблицу идут все товары без учета проверки границы. Проверка границы работает только при выставлении поля "Когда проверять" в "Парсинг в csv". Не совсем понимаю логику. Мне нужно первичный парсинг провести в режиме "Парсинг в csv" и затем уже для крона переключиться в режим "Добавление и обновление"? Для меня, как для обывателя, "парсинг в csv" равняется "добавление".

Правила допуска в работе с прайсами доступно п режиме Парсинг в CSV
Остальные относятся к парсингу в ИМ

 

2 часа назад, lerand сказал:

3) В таблице в строку товара необходимо ввести "интеллектуальную" ячейку доставка с условием: если граница {цена} больше определенной суммы значение ячейки равно 0, а если меньше или равно определенной суммы значение в таком случае равно 300 руб. Каким образом это можно организовать? Хотелось бы это сделать "на лету", чтобы после формирования файла CSV  не нужно было прописывать формулы руками.

как вам уже правильно подсказали это возможно сделать, делайте через наценку
https://simplepars.top/index.php?page=note&n=4

Надіслати
Поділитися на інших сайтах

Проблема с парсингом опции цены. Спарсить удается только вот такие строчки(фото) где цена на одну и ту же опцию (например Размер 200х210 Цена 50000) повторяются 5 раз. Соответственно в выборе появляются 5 дублей каждого размера. Как то модуль может с этим бороться? Регулярки вроде же не могут дубли искать....

Спойлер

!========== Повторение [№1] ========= Разделитель [{csvnc}] ========== !

:{"ID":"36169122","VALUE":100990,"DISCOUNT_VALUE":80790,"DISCOUNT_DIFF":20200,"DISCOUNT_DIFF_PERCENT":20,"PRINT_VALUE":"100 990","PRINT_DISCOUNT_VALUE":"80 790"},"XML_ID":"8c2b5b90-420a-11e8-a551-2c768a5115e1#1cb922a7-420d-11e8-a551-2c768a5115e1","DLINA":"220","SHIRINA":"200

!========== Повторение [№2] ========= Разделитель [{csvnc}] ========== !

:{"ID":"36169079","VALUE":100990,"DISCOUNT_VALUE":80790,"DISCOUNT_DIFF":20200,"DISCOUNT_DIFF_PERCENT":20,"PRINT_VALUE":"100 990","PRINT_DISCOUNT_VALUE":"80 790"},"XML_ID":"8c2b5b90-420a-11e8-a551-2c768a5115e1#1cb922a5-420d-11e8-a551-2c768a5115e1","DLINA":"210","SHIRINA":"200

!========== Повторение [№3] ========= Разделитель [{csvnc}] ========== !

:{"ID":"36169067","VALUE":96990,"DISCOUNT_VALUE":77590,"DISCOUNT_DIFF":19400,"DISCOUNT_DIFF_PERCENT":20,"PRINT_VALUE":"96 990","PRINT_DISCOUNT_VALUE":"77 590"},"XML_ID":"8c2b5b90-420a-11e8-a551-2c768a5115e1#1cb9229f-420d-11e8-a551-2c768a5115e1","DLINA":"220","SHIRINA":"180

!========== Повторение [№4] ========= Разделитель [{csvnc}] ========== !

:{"ID":"36169022","VALUE":96990,"DISCOUNT_VALUE":77590,"DISCOUNT_DIFF":19400,"DISCOUNT_DIFF_PERCENT":20,"PRINT_VALUE":"96 990","PRINT_DISCOUNT_VALUE":"77 590"},"XML_ID":"8c2b5b90-420a-11e8-a551-2c768a5115e1#1cb9229d-420d-11e8-a551-2c768a5115e1","DLINA":"210","SHIRINA":"180

!========== Повторение [№5] ========= Разделитель [{csvnc}] ========== !

:{"ID":"36169010","VALUE":92990,"DISCOUNT_VALUE":74390,"DISCOUNT_DIFF":18600,"DISCOUNT_DIFF_PERCENT":20,"PRINT_VALUE":"92 990","PRINT_DISCOUNT_VALUE":"74 390"},"XML_ID":"8c2b5b90-420a-11e8-a551-2c768a5115e1#1cb92295-420d-11e8-a551-2c768a5115e1","DLINA":"220","SHIRINA":"160

!========== Повторение [№6] ========= Разделитель [{csvnc}] ========== !

:{"ID":"36168967","VALUE":92990,"DISCOUNT_VALUE":74390,"DISCOUNT_DIFF":18600,"DISCOUNT_DIFF_PERCENT":20,"PRINT_VALUE":"92 990","PRINT_DISCOUNT_VALUE":"74 390"},"XML_ID":"8c2b5b90-420a-11e8-a551-2c768a5115e1#1cb92293-420d-11e8-a551-2c768a5115e1","DLINA":"210","SHIRINA":"160

!========== Повторение [№7] ========= Разделитель [{csvnc}] ========== !

:{"ID":"36168955","VALUE":87990,"DISCOUNT_VALUE":70390,"DISCOUNT_DIFF":17600,"DISCOUNT_DIFF_PERCENT":20,"PRINT_VALUE":"87 990","PRINT_DISCOUNT_VALUE":"70 390"},"XML_ID":"8c2b5b90-420a-11e8-a551-2c768a5115e1#1687c9b7-420d-11e8-a551-2c768a5115e1","DLINA":"220","SHIRINA":"140

!========== Повторение [№8] ========= Разделитель [{csvnc}] ========== !

:{"ID":"36168910","VALUE":87990,"DISCOUNT_VALUE":70390,"DISCOUNT_DIFF":17600,"DISCOUNT_DIFF_PERCENT":20,"PRINT_VALUE":"87 990","PRINT_DISCOUNT_VALUE":"70 390"},"XML_ID":"8c2b5b90-420a-11e8-a551-2c768a5115e1#1687c9b5-420d-11e8-a551-2c768a5115e1","DLINA":"210","SHIRINA":"140

!========== Повторение [№9] ========= Разделитель [{csvnc}] ========== !

:{"ID":"36168898","VALUE":100990,"DISCOUNT_VALUE":80790,"DISCOUNT_DIFF":20200,"DISCOUNT_DIFF_PERCENT":20,"PRINT_VALUE":"100 990","PRINT_DISCOUNT_VALUE":"80 790"},"XML_ID":"8c2b5b90-420a-11e8-a551-2c768a5115e1#1687c9af-420d-11e8-a551-2c768a5115e1","DLINA":"220","SHIRINA":"200

 

Безымянный.png

ячс.JPG

Змінено користувачем begetflame
Надіслати
Поділитися на інших сайтах


В 13.03.2021 в 15:07, kostya242 сказал:

 

Не совсем так.. Я вручную, по самым покупаемым товарам, иногда проставляю более низкие цены для привлечения внимания.

 

 

  Показать контент

image.thumb.png.506d3937b7637d83d0e8d6f21be9b29d.png

 

 

При очередном обходе парсером таких товаров - акционная цена удаляется

 

Может есть способ обойти эту проблему, что парсер при обновлении удаляет акционную цену?

Надіслати
Поділитися на інших сайтах


Еще вопрос:

 

CSV файл будет регулярно обновляться и будет доступен по ссылке. Чтобы не пугать человека, который будет работать с этим, нужно ввести дополнительную колонку в таблицу - Дата. Тогда человек будет всегда четко понимать, что эта таблица свежая.

 

Как можно сформировать границы с актуальной датой на момент формирования/обновления таблицы?

 

Надіслати
Поділитися на інших сайтах


12 минут назад, begetflame сказал:

Проблема с парсингом опции цены. Спарсить удается только вот такие строчки(фото) где цена на одну и ту же опцию (например Размер 200х210 Цена 50000) повторяются 5 раз. Соответственно в выборе появляются 5 дублей каждого размера. Как то модуль может с этим бороться? Регулярки вроде же не могут дубли искать....

Здравствуйте
можете удалять повторяющиеся строки.
https://simplepars.top/index.php?page=note&n=37

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

Надіслати
Поділитися на інших сайтах

12 минут назад, kostya242 сказал:

Может есть способ обойти эту проблему, что парсер при обновлении удаляет акционную цену?

В файле /admin/model/catalog/simplepars.php
найдите и удалите вот этот участок кода.
 

Спойлер

StZ4dJ5.png


и модуль перестанет удалять и обновлять акцеонные цены.

Надіслати
Поділитися на інших сайтах

12 минут назад, lerand сказал:

Еще вопрос:

 

CSV файл будет регулярно обновляться и будет доступен по ссылке. Чтобы не пугать человека, который будет работать с этим, нужно ввести дополнительную колонку в таблицу - Дата. Тогда человек будет всегда четко понимать, что эта таблица свежая.

 

Как можно сформировать границы с актуальной датой на момент формирования/обновления таблицы?

 

Встроенной фунции модуля по формировании даты нет, так что только если на странице донора брать актуальную дату, или еше как то.
То есть встроенной функции, получить текущую дату, нет.

  • +1 1
Надіслати
Поділитися на інших сайтах

16 минут назад, begetflame сказал:

Что произойдет если совпадут артикулы у двух проектов? Товар будет перезаписываться каждый раз на тот который последним спарсил?

Да. Можно настроить какие поля будут обновляться, какие не будут.

Один проект добавляет все, кроме цены, например. А второй только цену обновляет.

Надіслати
Поділитися на інших сайтах


44 минуты назад, begetflame сказал:

Что произойдет если совпадут артикулы у двух проектов? Товар будет перезаписываться каждый раз на тот который последним спарсил?

Все зависит от действия что вы выберите.
Допустим стоит действие обновить цену.

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

Надіслати
Поділитися на інших сайтах

8 часов назад, Rassol2 сказал:

Здравствуйте
можете удалять повторяющиеся строки.
https://simplepars.top/index.php?page=note&n=37

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

Мучаюсь мучаюсь никак не выходит. Проясните один момент. Когда я применяю "Правила поиск замены" оно применяется ко всему тексту или только к повторению? Потому что если оно поочередно применяется к каждому повторению, то как я смогу отсечь повторяющиеся строки. Ведь получается их там просто нет

Снимок.JPG

Надіслати
Поділитися на інших сайтах


22 минуты назад, begetflame сказал:

Мучаюсь мучаюсь никак не выходит. Проясните один момент. Когда я применяю "Правила поиск замены" оно применяется ко всему тексту или только к повторению?

Только к повторению. Весь набор правил применяется к каждой итерации по отдельности. Затем составляется одна общая строка для финального пред просмотра и она же передается в границу парсинга.
 

 

23 минуты назад, begetflame сказал:

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

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

Надіслати
Поділитися на інших сайтах

Обновление v4.3_stable

Уже больше недели нет сообщений об критических ошибках. Странно, возможно новый функционал неплохо обкатали. :geek:
Так что выпускаю новую стабильную версию!
Обратите внимание кто будет обновятся с v4.1-3 и ниже вам стоит прочитать все новшества так как переход на эту версию требует проверки настроек под новые возможности.
Изменена логика работы разделителя в повторяющихся границах парсинга, и это нужно учесть в ваших проектах, после обновления.

 

Ссылки на все изменения под спойлером.


Так же в этой версии доработан фильтр по категориями в редакторе товаров.
Теперь у вас есть возможность в редакторе товаров отобрать товары где не указаны категории.
 

Спойлер

GNuCOCc.png

Вот этот функционал стоит обкатать. И проверить детальнее перед использованием. Я провел ряд тестов. Но был бы признателен если вы у себя отдельно проверите работу этой фичи и дадите фидбек.

После выхода стабильной версии классически перехожу к глобальным фишкам в модуль. ;-)

 

  • +1 3
Надіслати
Поділитися на інших сайтах

И какие глобальные фишки можно ожидать в перспективе? :geek:
Авторизация по крону и расширение возможностей модуля при помощи собственных скриптов.

Отправлено с телефона через Tapatalk

Надіслати
Поділитися на інших сайтах

3 минуты назад, Rassol2 сказал:

Авторизация по крону и расширение возможностей модуля при помощи собственных скриптов.

Отправлено с телефона через Tapatalk
 

:?:eek:

Надіслати
Поділитися на інших сайтах


17 часов назад, Rassol2 сказал:

Только к повторению. Весь набор правил применяется к каждой итерации по отдельности. Затем составляется одна общая строка для финального пред просмотра и она же передается в границу парсинга.
 

 

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

Уже попробовал. У меня проблема в том что повторяющиеся строки не по порядку идут а вот так:

Строка1

Строка2

Строка3

Строка1

Строка2

Надіслати
Поділитися на інших сайтах


Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.