Большая база штрихкодов. Скачать бесплатно без регистрации и SMS
Всем привет. Мы собираем информацию о товарах, и среди этой информации есть штрихкоды. Мне показалось, что именно они имеют ценность в отрыве от остальных данных, и что их проще всего выложить в открытый доступ. Получилась база на 1 816 200 записей. Товары из нее встречались в продаже на российском рынке в период с начала 2021 до средины ноября 2022 года, то есть, в базе нет товаров, которые в России не продавались.
Скачать можно на гитхабе: https://github.com/aioke/barcodes либо у нас на сайте: https://catalog.app/public-opportunities/download-barcodes. База представлена в двух форматах:
CSV (barcodes_csv.zip). Файл формата csv можно открыть в текстовом редакторе. Блокнот справляется с файлом такого размера.
SQLite: (barcodes_db.zip). Файл barcodes.db является файлом базы данных SQLite. Его можно открыть в программе "DB Browser for SQLite". Сайт: https://sqlitebrowser.org. Скачать: https://sqlitebrowser.org/dl/
В обоих случаях структура записи следующая:
Id — идентификатор, уникальный в рамках таблицы.
Category — категория товарав том же виде, что и в источнике, где найден штрих-код. Мы старались брать наиболее конкретную категорию в иерархии.
Vendor — бренд товара.
Name — название товара.
Article — артикул производителя товара.
Barcode — штрихкод.
Потребительские товары, кроме одежды, обуви, продуктов и лекарств. Некоторые товары промышленного назначения.
Мы собрали их своими силами за два года. Мы парсим довольно много сайтов, больше трехсот, но медленно, на самые популярные приходится 2-3 запроса в минуту, на менее популярные — несколько запросов в час. С посещенных страниц мы забираем название товара, его цену, описание, характеристики и ссылки на изображения. Если по разметке страницы можно выделить категорию, бренд, артикул в отдельные поля — выделяем, если нет — оставляем название как есть. В итоге у нас получилась база, где есть 70 миллионов товаров, 160 миллионов изображений и миллиард с небольшим характеристик.
Среди характеристик иногда встречаются штрихкоды. Именно их я собрал в отдельный файл и выложил в открытый доступ.
Стоит оговориться, что это сырые данные, и среди них могут встречаться ошибки. Например, не все из штрихкодов пройдут валидацию по какому-либо из стандартов: EAN-13, EAN-8, UPC-A или UPC-E. Кроме того, некоторые штрихкоды встречаются больше одного раза. Это тоже объяснимо: значит, они встречались на нескольких разных сайтах, и, скорее всего, ссылаются на один и тот же товар. Но не обязательно: некоторые компании сами придумывают штрихкоды для своей продукции по принципу “подойдут любые 13 цифр”.
По большому счету, именно штрихкоды для нас не играют большой роли. Они есть на примерно два процента товаров в базе, и поэтому мы не можем использовать их как основной фактор для сопоставления товаров, только как вспомогательный, при этом не особо важный.
Раскрою тему. У нас есть большая база товаров. У клиента есть каталог его товаров (либо каталоги его поставщиков). Мы сопоставляем свои товары товарам из каталога клиента, и это позволяет автоматически найти изображения для товаров и заполнить характеристики. Об этом я уже написал несколько статей с довольно подробным описанием используемых подходов и алгоритмов: про сопоставление товаров, про автоматическое создание карточек, про поиск похожих товаров, про быстрый поиск по неточному соответствию среди ста миллионов записей.
Соответственно, штрихкоды участвуют в двух процессах:
Их совпадение является фактором, который позволяет (после некоторых дополнительных проверок) рассматривать товары из разных источников как один и тот же товар.
Мы можем заполнить штрихкод автоматически, если в каталоге клиента для какого-то товара его нет, а у нас в базе — есть.
Кстати, не стоит использовать два процесса одновременно, получается положительная обратная связь, и тогда ошибки получают дополнительное подтверждение.
В общем, мы делаем PIM-систему, и у нее есть некоторые возможности по автоматизации ручного труда.
Как угодно. Никаких ограничений или условий нет. Мы просто делимся справочником с теми, кому он нужен. Кому нет, тот ничего не теряет.
Возможно, у кого-то, кто потом найдет этот пост через поисковик, будет стоять более широкая задача из области работы с товарами. Возможно, мы сможем ему помочь.