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

Recommended Posts

В отладочной информации вы увидите
https://prnt.sc/o5102j

Для обычной границы разделитель данных {csvnc} для повторяющейся ничего не нужно. Но если введет в разделитель {csvnc} тоже будет работать. Я это предусматривал.
Самое главное добиться пары. Имя -> Значение -> Имя -> Значение
От этого зависит формирования всех атрибутов

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

@rozario888 Если не получится напишите.
А то я много всяких исправления уже внес в модуль, и делал ваше задания на текущей версии. Я вам скину архив.
Там как раз есть одна правка связанная с атрибутами. На случай если человек не может спарсить ровно значение. И первый параметр получается пустой. Это сдвигает всю структуру.
У меня это уже предусмотрено а в той версии что на форуме еше нет.
Скоро будет обновление все доделаю проверю и выкачу. :)

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

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

Так было когда описание добавлял, но сейчас вроде оно уже было

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


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

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

Так было когда описание добавлял, но сейчас вроде оно уже было

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

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

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

Да, лишнего тут есть http://prntscr.com/o5184x http://prntscr.com/o518cq

а вы точно сделали как я написал ?
потому что в моем варианте вырезаются все теги html а в скриншотах что вы показываете видно что вы не вырезали лишние теги. А значит они залезли в имя и значение атрибутов и тем самым сдвинули вам верстку.
Конкретно вот это правило и спасает вас от подобных косяков.
https://prnt.sc/o5197r

 

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

@rozario888
скину я вам на всякий случай настройки SPsetting-9.json

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

7 минут назад, rozario888 сказал:

Да, лишнего тут есть http://prntscr.com/o5184x http://prntscr.com/o518cq

Я кстати неправ. Все же через повторяющиеся проше.

задаем обычную - https://prnt.sc/o51br7

а внутри нее повторяющуюся - https://prnt.sc/o51br7
 

И запихиваем в поле атрибутов товара и все. https://prnt.sc/o51cdu

 

результат - https://prnt.sc/o51cn2

 

самому еше учится и учится )))

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

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

а вы точно сделали как я написал ?

все, кроме одной палки после скип)) не продавилась видимо...

поставил ее, лишний код ушел, но атрибуты местами поменялись и нет соответствия http://prntscr.com/o51eit

 

ща по последнему варианту попробую 

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


2 минуты назад, rozario888 сказал:

ща по последнему варианту попробую 

пробуйте. Если что в лс напишите мне данные доступа к им я настрою.
Но вообще нужно учится ;-)

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

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

а внутри нее повторяющуюся - https://prnt.sc/o51br7

скрин из предыдущей строчки

 

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

Но вообще нужно учится

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

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

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


Еще есть подозрение, что действие "Удалить из товара создать заново" некорректно работает, либо какие то сильные формулы для кода нужны. Как будто предыдущий код на новый накладывается, а не удаляется полностью. 80% атрибутов были перепутаны местами названия со значениями, а остальные смещены + посередине списка был код, которого там в принципе нет.

Попробовал через АОП, соответствие сразу правильно сделалось, но проблема из выше сохранилась. Ровно загрузились со второй попытки, когда предварительно руками из карточки все атрибуты удалил   http://prntscr.com/o522ql

 

 

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


Ну да, значения в атрибуты записывались http://prntscr.com/o5269a

А вот как раз и те куски внутри атрибутов http://prntscr.com/o526un

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


10 минут назад, rozario888 сказал:

Ну да, значения в атрибуты записывались http://prntscr.com/o5269a

как бы да судя по скриншотам что вы показывали ранние. Где перепутаны места.
 

 

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

Еще есть подозрение, что действие "Удалить из товара создать заново" некорректно работает, либо какие то сильные формулы для кода нужны. Как будто предыдущий код на новый накладывается, а не удаляется полностью. 80% атрибутов были перепутаны местами названия со значениями, а остальные смещены + посередине списка был код, которого там в принципе нет.

сам атрибут  не удаляется, он удаляет из товара. Но физически созданный атрибут не удаляется.
Если вы на создавали название атрибутов по их значению то функция удалить и создать заново удаляет эти атрибуты из товара. А не физически созданный атрибут.
 

в моем модуле человек парсит и сам проверяет данные которые он спарсил. И эти данные присваивает либо в атрибут либо в описание, куда нужно.

Цитата

Попробовал через АОП, соответствие сразу правильно сделалось, но проблема из выше сохранилась. Ровно загрузились со второй попытки, когда предварительно руками из карточки все атрибуты удалил   http://prntscr.com/o522ql

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

Нужен опыт. А он только со временем приходит.

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

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

А так - да, нужен опыт, тем более модуль не односложен как АОП в части парсинга, возможностей больше. 

 

 

 

 

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


Обновление 2.4-2_Beta

В этом обновлении я поработал над удобством использования модуля.  Это не все а только начало. Страница настройки парсинга еше в планах.

 

Поиск/Замена

1. Страница поиск замена стала одной из главных в модуле поэтому я ее вынес в отдельную вкладку. И убрал кнопки перехода на эту страницу.
Теперь вы можете с любой страницы модуля быстро перейти в поиск замену, и не нужно постоянно искать в разным местах кнопки перехода :-o
Screenshot.thumb.png.3fcc74f0856ec28e5f659e9d86c9ab2a.png

 

2. Исправлен баг когда вы парсите границу для пред просмотра, получаете определенные данные. Затем берете вторую ссылку парсите данные с нее. И если на второй ссылку этих данных нет, то есть значение пустое. То модуль оставлял предыдущее значение.
Теперь же модуль показывает правильно и затирает поле для проверки. Об этом давное писал @stas2010 но как то заметка что нужно поправить затерялась.
Сейчас исправил и спасибо @stas2010 за то что написал про данный баг.

 

3. Исправлен недочет в фунции Захешировать значение (MD5) используемая для создания уникальных артикулов, когда вы пытаетесь создать уникальное значение с пустой границы парсинга, она всегда выдавала хеш, который был не уникальным. Потому что всегда генерировался из пустой строки. Теперь при попытке сгенерировать уникальное значение из пустой границы ничего не даст. Будет тоже ничего.
За отловку этого бага спасибо мне @Rassol2

 

4. Изменены поля в поиск замены для тестирования кода. Теперь блоки Исходный текст и Текст после обработки находятся друг под другом.
Это позволяет удобно расширять блоки и просматривать большие простыни кода. https://prnt.sc/o5uhen

 

Ссылки на пред просмотр!

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

 

Страница настройки парсинга

Screenshot2.thumb.png.189b48fedf9379f8ba3a1fec45f70cce.png

на этой странице так же добавлена кнопка при нажатии на которую данная ссылку будет открыта в новой вкладке браузера.
Ну это вообще что бы лишние движения не делать ;-)

 

На остальных страницах, таких как поиск замена, парсинг в csv, пред просмотр париснга в им есть порядок приоритета ссылок.
Screenshot3.thumb.png.f02acaab1590b170b508a853ae728098.png

 

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

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

Screenshot3.thumb.png.c2cb0fd0543ab6c608ba46256ffde54c.png

 

Ура, многие кто говорил что данной функции не хватает. Сделал! :-o


Доработка алгоритм парсинга атрибутов в ИМ

Доработал алгоритм формирования атрибутов в им. Точнее алгоритм тот же, только модуль стал немножко умнее.
Сделал после общения с @rozario888  понял в чем есть некое недопонимания работы этой функции.

А именно. Если вы парсите атрибуты вам нужно добиться структуры вида Имя атрибута->Значение->Имя атрибута->Значение->Имя атрибута->Значение

И если в парсинга атрибутов у вас попадется пустое значение в начале это можете перевернуть порядок.
Имитируем попадание пустого значения в начале.

https://prnt.sc/o5uq0h

Результат этого получится плачевный.
https://prnt.sc/o5uqec

 

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

То есть теперь результат при тех же настройках будет такой
Screenshot4.thumb.png.cd4fef28a6898298726615261b1b0b23.png

 

Главное!!! Нужно дробится что бы первое значение не пустое было именно имя атрибута. И они чередовались. Имя, значение.

Надеюсь такое обновления сделает парсинг атрибутов удобнее, и приятнее.

Как обычно жду ваши отзывы. :)

 

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

@Rassol2 Привет, подскажи как сделать добавление в поле model значение sku? вроде бы и выбрал границу, но при парсинге у меня модель ставит только номера (150, 151, 152 и т.д.) а хочется чтобы туда подставлялось sku

Спасибо!

image.thumb.png.9bb6a97a4f0f6b5acaf574177a12c77e.png

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


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

@Rassol2 Привет, подскажи как сделать добавление в поле model значение sku? вроде бы и выбрал границу, но при парсинге у меня модель ставит только номера (150, 151, 152 и т.д.) а хочется чтобы туда подставлялось sku

Спасибо!

Здравствуйте.
Код товара он же model обязательное значение по этому у него есть 2 режима.
1. как у вас на скриншоте. Создавать по умолчанию. Где формируется model из id товара.
2. Вариант номер два это парсинг значения. https://prnt.sc/o5vt3m

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

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

@Rassol2 Спасибо, смена значения помогла.

Можно как отменить это правило 

 

2019-06-24 12:36:42| !->[Товар не создан] : Товар с model  = [1105АН] Уже существует в магазине и модуль его не создавал.

у меня встречаются одинаковые названия, model и sku

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


14 минут назад, kagan25 сказал:

@Rassol2 Спасибо, смена значения помогла.

Можно как отменить это правило 

 

2019-06-24 12:36:42| !->[Товар не создан] : Товар с model  = [1105АН] Уже существует в магазине и модуль его не создавал.

у меня встречаются одинаковые названия, model и sku

Если отменить будет беда.
Дубли это очень страшное дело :)

Можно сделать так. Идентификатор товара model формируется по умолчанию.
А sku записывает свои артикула. Тогда модуль не будет ругается на одинаковые артикула.
Но что вы потом будете делать я не знаю.
Потому что обновлять такое уже не получится. Поскольку цены будут путаться из за одинаковых идентификаторов.
я бы на вашем месте взял бы к пример название товар, и код с сайта и к примеру главное фото.

Создал под них отдельные границы парсинга.
затем через поиск замену в каждую границу прогнал через хеширования мд5 на 4 символа.
И затем склеил эти границы в поле артикул https://prnt.sc/o5wry6
 

Вот так https://prnt.sc/o5wsxs

В итоге получил уникальны отпечаток страницы. https://prnt.sc/o5wt7v
Такой артикул всегда будет совпадает с той страницей где один в один будут все 3 границы.
Вы сможете обновлять товар, и модуль всегда сможет даже по другой ссылке определить что это тот же товар.

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

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

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

Нужно ли при обновлении выполнять inst.php?

в этот раз ничего в базе не менял так что нет.
 

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

@kagan25 ну а если вам прям очень нужно отменить это правило. Тогда можете это сделать в коде модуля.
В файле /admin/model/catalog/simplepars.php
примерно в строке 1349 от сегодняшнего обновления.

вы найдете строку
return $do;
она кстати один раз в этом файле встречается так что можете поиском по файлу найти.
и перед ней дописываете
$do['add'] = ['permit' => 1];
Что бы вышло вот так
1397939637__2019-06-24_13-16-57.png.4f5dcfef1f0e00a07f42197084108bde.png

 

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

Он будет создавать новые товары если выбрано действие добавлять, или добавлять и обновлять.

Новая ссылка новый товар. Без каких либо проверок на существования в магазине такого товара.

Но я бы рекомендовал вам прислушаться к моему предыдущему сообщению. Возможно это будет выход для вас.
А если нет. То все действия вы делаете на свой страх и риск :-D

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

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

@kagan25 ну а если вам прям очень нужно отменить это правило. Тогда можете это сделать в коде модуля.
В файле /admin/model/catalog/simplepars.php
примерно в строке 1349 от сегодняшнего обновления.

вы найдете строку
return $do;
она кстати один раз в этом файле встречается так что можете поиском по файлу найти.
и перед ней дописываете
$do['add'] = ['permit' => 1];
Что бы вышло вот так
1397939637__2019-06-24_13-16-57.png.4f5dcfef1f0e00a07f42197084108bde.png

 

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

Он будет создавать новые товары если выбрано действие добавлять, или добавлять и обновлять.

Новая ссылка новый товар. Без каких либо проверок на существования в магазине такого товара.

Но я бы рекомендовал вам прислушаться к моему предыдущему сообщению. Возможно это будет выход для вас.
А если нет. То все действия вы делаете на свой страх и риск :-D

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

Там каталог артикулов и названий без цен. 

А что он дальше будет делать с дублями - не знаю)

На сайте-доноре в индексе гугла вообще 130к страниц...

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


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

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

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

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

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

Вхід

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

Вхід зараз

×
×
  • Створити...

Important Information

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