Boa tarde No domínio público, um enorme diretório de códigos de barras com nomes de produtos, categorias e marcas finalmente apareceu.
Trabalhamos há cerca de 8 anos e agora possui cerca de 3 milhões de códigos de barras nos padrões EAN (EAN-13, EAN-8) e UPC (UPC-A, UPC-E).
O que tem ai?
Há uma tabela contendo entradas de código de barras e os nomes de produtos correspondentes; em todas as entradas há uma categoria e em muitas - uma marca.
A gama de produtos apresentados é muito ampla. Não há equipamentos pesados, mas provavelmente todos os segmentos de consumidores estão presentes (produtos farmacêuticos, perfumes, cosméticos, alimentos, brinquedos, sortimento de sexshop, livros, artigos de papelaria, hardware, ferramentas, etc. etc.)
A versão online original do manual é armazenada no servidor Universe-HTT.
A versão aberta é postada no
github . Observe que o banco de dados fragmentado é armazenado nas fontes. O arquivo completo está
no release .
Por que é necessário?
Aqueles que pesquisaram (na maioria das vezes sem sucesso) na Internet ou em qualquer outro lugar por um guia de código de barras e já sabem por que é necessário. De resto, listarei as propriedades úteis de uma matriz de dados tão extensa:
- Antes de tudo, esta é uma lista de produtos com identificadores "sólidos". Ou seja, você pega um produto arbitrário, por exemplo, deitado na mesa de cabeceira e, pelo código de barras impresso na embalagem, você pode compará-lo com um produto similar localizado em algum local de um armazém no Rio de Janeiro.
- A consequência do parágrafo anterior será a oportunidade de facilitar o fluxo de documentos eletrônicos entre empresas, porque o problema de sincronização da maioria (mas não de todos, é claro) dos bens desaparece.
- Você pode abrir rapidamente uma nova loja sem direcionar as mercadorias para o sistema de contabilidade, mas obtê-las desse diretório pesquisando um código de barras (um exemplo muito idealizado, tudo bem).
As opções acima e suas possíveis variações são bastante comuns. Existem usos muito mais interessantes para este guia:
- Análise de Dicionário de Marcas Registradas
- Treinamento de redes neurais para a classificação de mercadorias e a normalização de seus nomes
- Desenvolvimento de sistemas "inteligentes" para comparar ofertas de preços de diferentes fontes
- Análise comparativa de vendas e outras operações em empresas independentes
- ... A lista continua com sua imaginação
Formato de apresentação
O banco de dados é representado por um arquivo de texto na codificação UTF-8 com campos separados por um caractere de tabulação.
A estrutura do registro é a seguinte:
- ID: identificador interno do produto
- UPCEAN: Barcode
- Nome: Nome do Produto
- CategoryID: identificador interno da categoria
- CategoryName: O nome da categoria. Como o diretório de categorias é hierárquico, esse nome é composto - do nível mais alto ao nível do terminal ao qual o produto pertence. Separadores de nível - Barra ('/')
- BrandID: Identificador interno da marca
- Marca: Nome da marca
Identificadores internos dificilmente são interessantes para qualquer pessoa - nós os carregamos apenas para nossos próprios propósitos (se você precisar identificar de repente o link do registro com precisão, se tiver alguma dúvida de fora).
Os registros em um formato distribuído livremente são classificados por nome do produto em ordem alfabética.
Funcionalidades
Se você estudar cuidadosamente os dados apresentados, notará que, ao contrário da maioria dos diretórios semelhantes disponíveis na Internet (pagos e gratuitos), foi realizado um trabalho intensivo sobre os nomes das mercadorias.
Algumas palavras sobre como fazemos isso.
Primeiro, o diretório (administrado no sistema
OpenPapyrus ) é processado automaticamente usando a tecnologia
que descrevi no Habré .
Eu gostaria de dizer que a tecnologia mencionada faz tudo por nós. Mas infelizmente. Uma grande quantidade de trabalho deve ser realizada nos modos semi-automático e manual.
Muitos itens precisam ser "descriptografados" - na fonte original, eles podem conter abreviações inconcebíveis e negligenciar completamente nosso sistema de nomeação de mercadorias :)
Todos os códigos de barras publicados em domínio público têm a garantia de serem testados quanto à conformidade com um dos quatro padrões: EAN-13, EAN-8, UPC-A, UPC-E e incluem um dígito de verificação. Possíveis defeitos e problemas serão descritos abaixo.
Completude e relevância
Para a pergunta típica "todos os códigos de barras estão no diretório?" a resposta é estereotipada: não e não pode ser.
Se você avaliar a integridade do diretório pela probabilidade de ausência de um código de barras que acidentalmente chamou sua atenção, será de 10 a 15% (minha própria estimativa aproximada, além disso, eles mesmos entendem, tendenciosa). De qualquer forma, nada de tamanho semelhante no domínio público não é mais
A cobertura geográfica (por países em que os produtos são vendidos) é significativa: Rússia, Ucrânia, Bielorrússia, EUA, Grã-Bretanha, União Européia, África do Sul, Brasil, Malásia e muitos outros.
Os idiomas de apresentação são principalmente russo e inglês. Geralmente, ignoramos fontes com outros idiomas, pois nada é significativo nesses idiomas (como exceção, existem posições em espanhol, tcheco e outros idiomas).
Atualizamos o diretório no servidor Universe-HTT com uma frequência de vários meses (quando acumulamos uma quantidade suficiente de dados no buffer preliminar). A última vez que eles carregaram dados em junho deste ano. A maioria das novas posições provavelmente está ausente. No entanto, embora isso possa parecer surpreendente, novos códigos de barras não aparecem com tanta frequência. Muitos produtos com os mesmos códigos são vendidos no varejo há anos.
Também planejamos atualizar a versão aberta do diretório de tempos em tempos.
Fontes
De quais fontes tiramos todos esses dados? Principalmente da internet. Coletamos várias listas de preços, relatórios abertos, inclusive de agências governamentais (por exemplo, alguns estados dos EUA publicam dados de compras).
Ervas daninhas
O diretório contém vários defeitos. Não existem muitos, mas é necessário denunciá-los.
Códigos defeituosos
Primeiro de tudo, os códigos de barras são interpretados erroneamente como UPC-A, enquanto na realidade é EAN-13 sem um dígito de verificação. O motivo é que a fonte original (ainda não sabemos qual) continha o código EAN-13 sem um dígito de verificação, mas o último dígito atendeu à regra de cálculo do dígito de verificação para UPC-A, e nosso modesto algoritmo contou esse código como relacionado ao UPC-A. Isso pode ser corrigido, mas notado tarde demais e as mãos não atingiram o ajuste de massa.
Problemas desse tipo são muito pequenos, mas, como se costuma dizer, infelizmente.
Incompatibilidade bruta
Além disso, há confusão nos produtos. Ou seja, em alguns casos (extremamente raros), um código de barras corresponde a um nome que não está relacionado a ele.
Códigos privados
Alguns códigos de barras podem ser particulares. Aqueles EAN-13 que começam com 2 nós descartamos no início, mas às vezes algo dá errado e códigos privados aparecem, começando em '2' ou aqueles que começam com outro dígito, no entanto privado, não registrado em nenhuma das organizações envolvidas (GS1, por exemplo).
Classificação
Como não tentamos estabelecer uma boa classificação do diretório - pouco foi possível. Um terço das posições pertence ao grupo padrão - ou seja, não é absolutamente classificado. O resto pode muito bem ser categorizado erroneamente.
Nem todos os produtos estão associados a marcas, embora tenhamos trabalhado muito nesse assunto.
Como ajudar?
Se você deseja ajudar a expandir o diretório, seremos gratos pelos dados enviados sobre os códigos de barras que você conhece. Duvido muito que haja alguém que queira, mas, apenas no caso, informo que de acordo com as informações do perfil não é difícil me encontrar.
Qualquer pessoa que tenha a capacidade de implementar uma classificação automática de itens de diretório e compartilhar idéias e práticas recomendadas receberá o título de uma pessoa incrivelmente gentil. De nossa parte, comprometemo-nos a informar o público sobre o sucesso de nossas próprias pesquisas nessa área.
Interesse próprio
Se você gostou do guia, marque-o no
github com um asterisco. Se você realmente gostou, marque também o projeto
OpenPapyrus com um
asterisco , porque toda a administração e gerenciamento do diretório é realizada com sua ajuda.
Termos de uso
Não há nenhum. Como desejar, use-o. Se você nos der um link - obrigado, não - nós sobreviveremos.
Lamenta amargos
Não querendo passar a necessidade como virtude, deixe-me saber que esperávamos, de alguma forma, monetizar o livro de referência em discussão. No entanto, não fomos capazes de alcançar sucessos perceptíveis nesse campo nos últimos anos. Portanto, eles decidiram: é melhor ser geral do que foder. Algo assim parece com nossos motivos para a ação indicada.
Obrigado pela atenção.