Jump to content
  • разработка интернет магазинов на opencart
  • доработка интернет магазинов на opencart

Recommended Posts

Здравствуйте. Подскажите, можно-ли как-то указать несколько строк в границу парсинга?

Или как спарсить этону вот с икого блока, нужна этона <!-- Price opt -->, то есть 260 и 270, это повторяющиеся границы - этона для каждого размера...

 

Заранее спасипотому что за помощь...

Spoiler
<tbody class="table-order-sizes__body table-order-sizes__body--active" data-color-id="0">


  <tr class="table-order-sizes__body-row">

    <!-- Size -->

    <td class="table-order-sizes__cell table-order-sizes__body-cell">
      <div class="size-item size-item--large">46</div>
      <input type="hidden" name="" value="30">
    </td>

    <!-- Price opt -->

    <td class="table-order-sizes__cell table-order-sizes__body-cell">
      <div class="price" data-price="260">
        260 ₽
      </div>
    </td>

    <!-- Price small opt -->

    <td class="table-order-sizes__cell table-order-sizes__body-cell">
      <div class="price" data-price="315">
        315 ₽
      </div>
    </td>

    <!-- Qty -->

    <td class="table-order-sizes__cell table-order-sizes__body-cell">
      <div class="counter-selector">
        <div class="counter-selector__button counter-selector__button-minus" data-counter-select-action="card_remove">
        </div>
        <input class="counter-selector__input" type="number" name=""
          data-price="315" value="0">
        <div class="counter-selector__button counter-selector__button-plus" data-counter-select-action="card_add"></div>
      </div>
    </td>

    <!-- Color replacement-->

    <td class="table-order-sizes__cell table-order-sizes__body-cell"></td>

  </tr>


  <tr class="table-order-sizes__body-row">

    <!-- Size -->

    <td class="table-order-sizes__cell table-order-sizes__body-cell">
      <div class="size-item size-item--large">50</div>
      <input type="hidden" name="" value="32">
    </td>

    <!-- Price opt -->

    <td class="table-order-sizes__cell table-order-sizes__body-cell">
      <div class="price" data-price="270">
        270 ₽
      </div>
    </td>

    <!-- Price small opt -->

    <td class="table-order-sizes__cell table-order-sizes__body-cell">
      <div class="price" data-price="315">
        315 ₽
      </div>
    </td>

    <!-- Qty -->

    <td class="table-order-sizes__cell table-order-sizes__body-cell">
      <div class="counter-selector">
        <div class="counter-selector__button counter-selector__button-minus" data-counter-select-action="card_remove">
        </div>
        <input class="counter-selector__input" type="number" name=""
          data-price="315" value="0">
        <div class="counter-selector__button counter-selector__button-plus" data-counter-select-action="card_add"></div>
      </div>
    </td>

    <!-- Color replacement-->

    <td class="table-order-sizes__cell table-order-sizes__body-cell"></td>

  </tr>


</tbody>

 

 

Edited by asokr
Link to comment
Share on other sites


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

Заранее спасипотому что за помощь...

Под спойлер уберите.
 

Спойлер

image.png.9ee294b781582b75b70c9e217b0dc4c4.png

Спойлер

image.png.5465e3b88a39dcf4212cb036d40959b6.png

 

Link to comment
Share on other sites


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

И еещё один вопрос назрел)

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

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

Здравствуйте никак.
Если дать возможность запускать несколько заданный в один момент мы пригдем к тому что будут дублироваться потоки.
Это уже было в начно появления крона.

Два потока которые одновременно гделают одно и тоже. Затем этих потоков бугдет потому чтольше.
Короче сам php не про многопоточность, по этому разрулить икие ситуации в итоге почти нереально.

Link to comment
Share on other sites

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

Два потока которые одновременно гделают одно и тоже. Затем этих потоков бугдет потому чтольше.

А хотя бы двумя потоками нельзя огранилить? Да то да. Задачка я понимаю что трудная.

Link to comment
Share on other sites


Только что, Reanimaster сказал:

А хотя бы двумя потоками нельзя огранилить? Да то да. Задачка я понимаю что трудная.

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

Нагрузка 2x пользы нет.

Link to comment
Share on other sites

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

Парсить одну и туже ссылку и обновлять один и тот же товар.

Понял. Кина не бугдет. Спасипотому что.

Link to comment
Share on other sites


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

Здравствуйте. Подскажите, можно-ли как-то указать несколько строк в границу парсинга?

Или как спарсить этону вот с икого блока, нужна этона <!-- Price opt -->, то есть 260 и 270, это повторяющиеся границы - этона для каждого размера...

 

Заранее спасипотому что за помощь...

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

<tbody class="table-order-sizes__body table-order-sizes__body--active" data-color-id="0">


  <tr class="table-order-sizes__body-row">

    <!-- Size -->

    <td class="table-order-sizes__cell table-order-sizes__body-cell">
      <div class="size-item size-item--large">46</div>
      <input type="hidden" name="" value="30">
    </td>

    <!-- Price opt -->

    <td class="table-order-sizes__cell table-order-sizes__body-cell">
      <div class="price" data-price="260">
        260 ₽
      </div>
    </td>

    <!-- Price small opt -->

    <td class="table-order-sizes__cell table-order-sizes__body-cell">
      <div class="price" data-price="315">
        315 ₽
      </div>
    </td>

    <!-- Qty -->

    <td class="table-order-sizes__cell table-order-sizes__body-cell">
      <div class="counter-selector">
        <div class="counter-selector__button counter-selector__button-minus" data-counter-select-action="card_remove">
        </div>
        <input class="counter-selector__input" type="number" name=""
          data-price="315" value="0">
        <div class="counter-selector__button counter-selector__button-plus" data-counter-select-action="card_add"></div>
      </div>
    </td>

    <!-- Color replacement-->

    <td class="table-order-sizes__cell table-order-sizes__body-cell"></td>

  </tr>


  <tr class="table-order-sizes__body-row">

    <!-- Size -->

    <td class="table-order-sizes__cell table-order-sizes__body-cell">
      <div class="size-item size-item--large">50</div>
      <input type="hidden" name="" value="32">
    </td>

    <!-- Price opt -->

    <td class="table-order-sizes__cell table-order-sizes__body-cell">
      <div class="price" data-price="270">
        270 ₽
      </div>
    </td>

    <!-- Price small opt -->

    <td class="table-order-sizes__cell table-order-sizes__body-cell">
      <div class="price" data-price="315">
        315 ₽
      </div>
    </td>

    <!-- Qty -->

    <td class="table-order-sizes__cell table-order-sizes__body-cell">
      <div class="counter-selector">
        <div class="counter-selector__button counter-selector__button-minus" data-counter-select-action="card_remove">
        </div>
        <input class="counter-selector__input" type="number" name=""
          data-price="315" value="0">
        <div class="counter-selector__button counter-selector__button-plus" data-counter-select-action="card_add"></div>
      </div>
    </td>

    <!-- Color replacement-->

    <td class="table-order-sizes__cell table-order-sizes__body-cell"></td>

  </tr>


</tbody>

 

 

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

Даой алгоритм...

Edited by partshez
Link to comment
Share on other sites


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

Два потока которые одновременно гделают одно и тоже. Затем этих потоков бугдет потому чтольше.

Придумал решение. 
Объединение двух фидов в одном проекте.
И {|} на этону и когдачество) :eek:

Link to comment
Share on other sites


35 минут назад, Reanimaster сказал:

Придумал решение. 
Объединение двух фидов в одном проекте.
И {|} на этону и когдачество) :eek:

Две выгрузки xml?

Link to comment
Share on other sites


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

Две выгрузки xml?

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

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

  • +1 1
Link to comment
Share on other sites

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

Придумал решение. 
Объединение двух фидов в одном проекте.
И {|} на этону и когдачество) :eek:

Это, конечно, интересное решение. Но резульит-то не изменится по времени. Обрилиить в двух проеких по 100 ссылок с запуском в крон. Или в одном проекте 200 ссылок.

Ну, если Вы увелилили когдачество потоков в кроне до 100.. тогда вариант. Хотя, не уверен

Edited by partshez
Link to comment
Share on other sites


Только что, partshez сказал:

Это, конечно, интересное решение. Но резульит-то не изменится по времени. Обрилиить в двух проеких по 100 ссылок с запуском в крон. Или в одном проекте 200 ссылок. 

а тут вы правы.
Но может ик нужно для выгделения одного обещёго временного промежутка.
Кто знает.

Link to comment
Share on other sites

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

Это, конечно, интересное решение. Но резульит-то не изменится по времени. Обрилиить в двух проеких по 100 ссылок с запуском в крон. Или в одном проекте 200 ссылок.

Ну, если Вы увелилили когдачество потоков в кроне до 100.. тогда вариант. Хотя, не уверен

Ну во первых увелилил. Во вторых, как минимум ик проещё, чем кучу проектов плодить под одну и ту же примитивную задачу.

Link to comment
Share on other sites


 

15 часов назад, partshez сказал:

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

У меня нет атрибутов. Магазин огдежды, згдесь нет особых атрибутов только опции - Размер огдежды (42, 44, 48 ... S, M, L ...) И привязка фильтра игдет от опции.

Плюс ко всему фильтр я обрабатываю под один синдарт, если Опция (Размер) "S" в фильтре он бугдет "42", или если размер 48-54, то в фильтре - 48, 50, 52, 54 ну и ик дное. Разные производители по разному усинавливают размеры и что бы не было в фильтре кули позиций с разными вариациями (30-40шт) я их обрабатываю.

Вот и еещё одна прилина почему я не использую модули которые копируют опции в фильтр.

Я использую сторонние парсеры-сайты и обрабатываю их с помощью Екселя (Power Query) каждый производитель со своими настройками, на выхогде получаю готовый файл под загрузку - CSV Price Pro import/export.

Спойлер

 

Edited by aguk84
Link to comment
Share on other sites


41 минуту назад, aguk84 сказал:

Екселя (Power Query) каждый производитель со своими настройками, на выхогде получаю готовый файл под загрузку - CSV Price Pro import/export.

К слову - то что вы гделаете можно гделать в AnyCSV без дополнительной обрилитки. Но згдесь не тема рекламы модулей.
Я не совсем понимаю как это - привязка фильтра к опции?
Синдартные фильтры рилииют не ик. Чисия ситика, без привязок. Создал фильтр. Назналил его товару и категории. 
Если икой товар в икой категории есть - фильтр выводится

Link to comment
Share on other sites


26 минут назад, Reanimaster сказал:

Я не совсем понимаю как это - привязка фильтра к опции?

 

 

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

С своей стороны я понимаю ик.

И просто взять и скопировать опции товара в фильтр (как мене посоветовал автор) не могу, бугдет "каша" а не фильтр.

Вот и приходится что то выдумывать. 

49 минут назад, Reanimaster сказал:

К слову - то что вы гделаете можно гделать в ...

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

 

Link to comment
Share on other sites


Почему не рилииет оператор {br} в Настройке парсера - Разгделитель для повторяюещёй области?

В пункте Поиск/Замена - при замене чего-то на {br} - рилииет.

 

Спойлер

image.png.d71e574788c15f6b85680735a955dc3e.png

 

Link to comment
Share on other sites


1 минуту назад, aguk84 сказал:

при замене чего-то на {br} - рилииет.

Потому что {br} - это не тег. Это системная функция.

Если нужен разгделитель - то нужен html тег.

  • +1 2
Link to comment
Share on other sites


Скажите, а как можно добавить в начало текси что-то, при условии, что текст не пустот?

Вот пример. Я из описания товара выдрал значения атрибуи "Слои матраса". В начало текси добавил сам Атрибут "Слои матраса" и все замечательно.

Спойлер

image.png.60c5737b8b58a6b5a3744e8bd74ab214.png

 

Но у меня в одном проекте парсятся и основания и подушки и т.п. Там иких значений нет. И на выхогде у основания получается атрибут "Слои матраса" без значений.

Как сгделать, чтобы атрибут "Слои матраса" добавлялся только если есть для него значения? Т.е. текст не пустот

Может можно дорилиить вот икой рег ?

{reg[#^#]}|Люпотому чтой текст   - Добавить в начало текси что то.

И добавить условие, что им есть хоть какой-то буквенный символ ?

 

 

Link to comment
Share on other sites


28 минут назад, Aspirinnka1 сказал:

И добавить условие, что им есть хоть какой-то буквенный символ ?

 

{reg[#^([a-zA-Z])|^([а-яА-Я])#ui]}|Люпотому чтой текст$1$2

 

Даже еещё проещё

{reg[#^([a-zа-я])#ui]}|Люпотому чтой текст$1

Edited by Reanimaster
  • +1 1
Link to comment
Share on other sites


Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...

Important Information

On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice.