Free Trial

Desafios Semanais

Resolva o desafio, compartilhe sua solução e lidere nossa Comunidade!

Desafio Semanal#193: Criando um Aplicativo Analítico para LEGO®

AnaMuniz
Moderator
Moderator

Olá, comunidade, tudo bem por aí? Nessa semana, vamos novamente usar LEGO® para criar um aplicativo analítico. A diferença dessa vez, nesta iteração, é que teremos que gerar um relatório, e incorporar imagens de modelos LEGO® no nosso relatório. Vamos praticar diversos conceitos avançados nesse desafio!

 

Para o aplicativo analítico, você deve incorporar um menu suspenso, permitindo aos utilizadores selecionar uma coleção LEGO®. Além disso, uma caixa de listagem facilitará a escolha de um ou vários anos de lançamento a partir de uma lista.

 

Para vencer este desafio, siga os passos abaixo. Tentamos descrever as ações que você precisa tomar para construir o fluxo de trabalho:

 

  1. Integração de conjuntos de dados e criação de tabelas:

   Combinar os conjuntos de dados para construir uma tabela abrangente com as seguintes colunas:

- Número do modelo (Model Number): este é o ID do conjunto.

- Nome do modelo (Model Name)

- Ano de lançamento (Year Released)

- Número de peças (Number of Parts)

- Nome da coleção (Collection Name)

  1. Desenvolvimento do aplicativo analítico:

a. Crie um menu suspenso (Dropdown) onde o usuário possa selecionar um nome de coleção único:

- Utilize a coluna “Collection Name” da tabela criada no passo anterior.

- Utilize apenas coleções com 50 ou mais entradas de nome de modelo (Model Name).

- Filtre os nomes de coleções que contenham pontos (.), vírgulas (,) e barras oblíquas (/).

 

b. Conceba uma caixa de listagem para que o usuário selecione um único ano ou vários anos de lançamento:

- Utilize a coluna Ano de Lançamento da tabela criada na etapa anterior.

 

  1. Filtragem e seleção de modelos de LEGO®:

Utilize os dados de entrada fornecidos pelo usuário da aplicação para filtrar a tabela e selecionar o(s) número(s) de modelo correspondente(s) ao nome da coleção selecionada pelo usuário e ao(s) ano(s) de lançamento.

 

  1. Recuperação automatizada de imagens:

- Criar uma macro de lote para obter imagens para cada modelo a partir do web site abaixo: https://brickset.com/search?query=31100&scope=All

- Modificar o endereço Web utilizando esta estrutura:

'https://brickset.com/search?query=' + tostring([Número do modelo]) + '&scope=All'

 

AnaMuniz_3-1694525566820.png

 

- Extrair o conteúdo da página e implementar um filtro para identificar linhas que contenham a URL https://images.brickset.com/sets/images/ ao lado do campo [Model Number].

- Extrair o caminho para a imagem (JPG) e o número do modelo (cuidado: algumas vezes, a página terá imagens adicionais anexadas).

- Use um filtro para obter o link da imagem quando [Model Number] = [ExtractedModelNumber].

- Utilize uma segunda ferramenta de Download e descarregue a imagem como um blob. (Se uma imagem JPG der um erro por estar no formato de blob errado, use os parâmetros de carga Content-Typ: application/png e Content-Disposition: attachment).

 

AnaMuniz_4-1694525566822.png

 

AnaMuniz_5-1694525566823.png

 

  1. Saída final e visualização do PDF:

 

O resultado deve ser um arquivo no formato PDF.

Prontos? Bom desafio!

 

Fonte dos dados:

https://www.kaggle.com/datasets/rtatman/lego-database?resource=download

Pedro_Coelho
Átomo

 .

 

Segue meu desafio pessoal!

 

Quase escapou essa semana ;)

O vídeo dessa semana pessoal:

 

https://www.youtube.com/watch?v=MI5iqFqx1FU

 

Abraço.