Объединить прайсы

Всех приветствую.

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

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

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

Сделать под каждого поставщика свой обработчик — в принципе выход, но хочется чего-то более универсального.
  • Вопрос задан
  • 4328 просмотров
Пригласить эксперта
Ответы на вопрос 4
@switlle
Когда сделаете универсальное поймете, что нужно в итоге подгонять под каждого поставщика. Лучший способ — сделать универсальный синхронизатор", но под каждого поставщика отдельно настраивать. Иначе Вы получите массу проблем. Как понять что товар одинаковый — тут уже нужно смотреть что за товары и подстраивать поиск совпадений. Не пытайтесь написать экспертную систему — это всегда хуже узкоспециализированной задачи. Если вы конечно не готовы это вылить в отделенный продукт по поиску похожих товаров.
Скорее всего у Вас будет максимум 5 прайсов. Не 100 ведь? Поэтому, я Вам очень рекомендую воспользоваться тем выходом из ситуации который Вы хотите обойти. Не делайте универсальной задачу там где она Вам больше не понадобится.
Ответ написан
moderatorh
@moderatorh
В конце девяностых запускал аналог прайс ру в одной из банановых республик. Сейчас возможно пришло бы в голову что то и другое, но тогда делал так. Начал разрабатывать свою собственную базу товаров со своей структурой. Посадил человека, который вначале вручную вбивал все в нашу базу делая, сопоставляя пункт из нашей базы с пунктом из прайса. Потом пошли дальше, сделали таблицы синонимов. В итоге, через несколько месяцев такой работы, где то 80-90 процентов прайсов вбивалось и сопоставлялось полностью автоматически, оставшиеся 10-20 процентов увы так же в ручную. Шестью годами позже подобную задачу решал при написании биллинга для классической и айпи телефонии, но там была привязка к кодам, так что все было проще…
Ответ написан
@dndred
Занимаюсь чем-то похожим примерно треть своего рабочего времени последние 5 лет. Около 30 различных поставщиков, состав меняется и растёт. Ассортимент — одежда, бельё, чни.
В начале делал на каждого поставщика индивидуальный обработчик, потом бросил. Даже крупные брэнды регулярно меняют формат — от расположения колонок и схемы наименования товара до деталей названия каждой конкретной тряпки. А нам было очень важно что бы в нашу базу один и тот же товар попадал всегда одинаково. Получилось, что я дольше проверял правильность выхода и переписывал алгоритмы на каждое изменение чем пользовался ими. В итоге для нескольких стабильных поставщиков есть персональные загрузчики разбирающие входной файл, а для большинства только ручками пополняемая база вида «длинная строка в свободной форме из накладной поставщика» -> набор наших внутренних полей. Приведение формата файла к пригодному к такой обработке тоже полуруками.
Некоторых даже в такую форму загнать не получается.
Впрочем, если не страшны постоянные задвоения строк, то всё становится резко проще.
Ответ написан
@SergeSerge
обычный юзер
привет, ты нашел какое-то решение по объединению прайсов? Как с тобой связаться и решить этот вопрос?
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы