Como construir um rastreador de popularidade de caça-níqueis de cassino online e um painel de análise
Um sistema para raspar e analisar os jogos de caça-níqueis populares destacados nas páginas iniciais de cassinos online, acompanhar sua popularidade ao longo do tempo e fornecer um painel com metadados e análises de caça-níqueis.
Learn2Vibe AI
Online
What do you want to build?
Resumo Simples
Este projeto visa construir um sistema para raspar as páginas iniciais de cassinos online para acompanhar os jogos de caça-níqueis populares ao longo do tempo, com um painel para exibir metadados e tendências de popularidade dos caça-níqueis.
Documento de Requisitos do Produto (PRD)
Objetivos:
- Raspar as páginas iniciais de cassinos online para extrair os nomes dos jogos de caça-níqueis populares
- Acompanhar a popularidade dos caça-níqueis em centenas de cassinos ao longo do tempo
- Fornecer um painel com metadados e análises de popularidade dos caça-níqueis
Público-alvo:
- Analistas da indústria de cassinos online
- Desenvolvedores de jogos de caça-níqueis
- Operadores de cassinos
Características principais:
- Raspagem diária das páginas iniciais de cassinos online
- Extração e normalização dos nomes dos caça-níqueis
- Enriquecimento de metadados dos caça-níqueis
- Acompanhamento e pontuação de popularidade
- Painel de análises
- Armazenamento e análise de dados históricos (pelo menos 1 ano)
Fluxos de Usuário
-
Coleta de Dados:
- O sistema raspa as páginas iniciais dos cassinos diariamente
- Extrai os nomes e rankings dos caça-níqueis
- Normaliza os nomes dos caça-níqueis
- Enriquece com metadados
- Armazena no banco de dados
-
Uso do Painel:
- O usuário acessa o painel
- Visualiza os caça-níqueis populares atuais em vários cassinos
- Explora as tendências de popularidade histórica
- Analisa os metadados dos caça-níqueis em relação à popularidade
-
Análise de Dados:
- O usuário consulta os dados históricos
- Compara a popularidade dos caça-níqueis entre os cassinos
- Identifica tendências ao longo do tempo (até 1 ano)
- Examina a correlação entre metadados e popularidade
Especificações Técnicas
- Frontend: React com TypeScript
- Backend: Supabase
- Raspagem: API existente que retorna HTML renderizado
- Banco de Dados: Supabase (PostgreSQL)
- Plataforma de Desenvolvimento: bolt.new
Endpoints da API
N/A
Esquema do Banco de Dados
-
Tabela de Caça-Níqueis:
- id (chave primária)
- nome_normalizado
- url_logo
- rtp
- fornecedor_software
- data_lancamento
-
Tabela de Cassinos:
- id (chave primária)
- nome
- url
-
Tabela de Resultados da Raspagem Diária:
- id (chave primária)
- data
- casino_id (chave estrangeira para Cassinos)
- slot_id (chave estrangeira para Caça-Níqueis)
- ranking
- nome_bruto_slot
-
Tabela de Aliases de Nomes de Caça-Níqueis:
- id (chave primária)
- slot_id (chave estrangeira para Caça-Níqueis)
- alias
Estrutura de Arquivos
/src /components Dashboard.tsx SlotList.tsx PopularityChart.tsx MetadataDisplay.tsx /pages Home.tsx Analysis.tsx /utils scraper.ts nameNormalizer.ts dataEnricher.ts /types SlotTypes.ts CasinoTypes.ts /services api.ts database.ts /hooks useSlotData.ts useCasinoData.ts App.tsx index.tsx /public index.html assets/ /scripts dailyScrape.ts dataUpload.ts
Plano de Implementação
- Configurar o projeto usando bolt.new com React, TypeScript e Supabase
- Projetar e implementar o esquema de banco de dados no Supabase
- Desenvolver a lógica de raspagem e integração com a API existente
- Implementar o algoritmo de normalização de nomes de caça-níqueis
- Criar o processo de enriquecimento de metadados dos caça-níqueis
- Desenvolver o script de raspagem diária e armazenamento de dados
- Construir componentes React para a interface do painel
- Implementar o carregamento de dados e o gerenciamento de estado em React
- Criar visualizações para as tendências de popularidade
- Desenvolver consultas analíticas para dados históricos
- Implementar a interface do usuário para explorar e analisar os dados
- Configurar o processo automatizado de raspagem diária
- Realizar testes abrangentes e corrigir bugs
- Implantar a aplicação
- Configurar processos de monitoramento e manutenção
Estratégia de Implantação
Informação não disponível na conversa.
Justificativa do Design
O esquema de banco de dados é projetado para armazenar e consultar eficientemente os resultados da raspagem diária, mantendo os dados históricos por pelo menos um ano. A separação de caça-níqueis, cassinos e resultados da raspagem diária permite consultas e análises flexíveis das tendências de popularidade ao longo do tempo. A tabela de aliases de nomes de caça-níqueis facilita a normalização de nomes, abordando o desafio de corresponder nomes ligeiramente diferentes para o mesmo caça-níqueis em diferentes cassinos. O armazenamento de rankings nos resultados da raspagem diária permite uma pontuação de popularidade mais precisa, conforme solicitado na conversa.