Comment construire un prototype de gestion et de scraping de données de casino avec Bolt.new
Une application web prototype pour le téléchargement, la gestion et l'analyse des données des casinos en ligne. Les fonctionnalités incluent les téléchargements CSV, le scraping web programmé, la visualisation des données et une interface de débogage complète.
Learn2Vibe AI
Online
What do you want to build?
Résumé Simple
Ce plan de codage décrit le développement d'un prototype d'application web pour la gestion et l'analyse des données des casinos en ligne, avec des téléchargements CSV, un scraping programmé et une interface de débogage.
Document d'Exigences Produit (PRD)
Objectifs :
- Créer un prototype pour la gestion des données des casinos en ligne
- Mettre en œuvre la fonctionnalité de téléchargement CSV pour les informations sur les casinos
- Développer un système de scraping web pour les données des jeux de machines à sous
- Fournir des outils de visualisation et d'analyse des données
- Inclure une interface de débogage pour surveiller les processus de scraping
Principales fonctionnalités :
-
Interface de téléchargement CSV
- Permettre aux utilisateurs de télécharger des fichiers CSV contenant des informations sur les casinos (noms, URL, images, etc.)
-
Affichage des données des casinos
- Afficher tous les casinos sous forme de cartes sur une page
- Mettre en œuvre la fonctionnalité de recherche
- Ajouter un filtrage par pays
-
Scraping des données des jeux de machines à sous
- Permettre le scraping à la demande par casino et par pays
- Mettre en œuvre le scraping hebdomadaire et mensuel programmé
- Stocker les données extraites (noms, positions, images) avec les horodatages
-
Visualisation des données
- Afficher les positions des machines à sous par catégorie pour chaque casino
- Afficher des captures d'écran des pages extraites
- Créer une vue croisée des machines à sous entre les casinos
-
Fonctionnalité d'exportation
- Permettre l'exportation CSV pour les casinos, les machines à sous et les résultats du scraping
-
Interface de débogage
- Afficher les informations de chronométrage du scraping
- Afficher les codes HTML et les balisages collectés
- Fournir des filtres pour les extractions réussies et échouées
Flux Utilisateur
-
Téléchargement CSV et gestion des données :
- L'utilisateur navigue jusqu'à la page de téléchargement CSV
- L'utilisateur sélectionne et télécharge le fichier CSV avec les informations sur les casinos
- Le système traite et stocke les données
- L'utilisateur affiche les données des casinos téléchargées sur la page d'affichage principale
-
Processus de scraping :
- L'utilisateur sélectionne un casino ou un pays pour le scraping
- L'utilisateur lance le scraping à la demande ou programme une tâche
- Le système effectue le scraping et stocke les résultats
- L'utilisateur affiche les résultats du scraping sur la page des détails du casino
-
Débogage et analyse :
- L'utilisateur navigue jusqu'à l'interface de débogage
- L'utilisateur filtre les résultats du scraping (réussis/échoués)
- L'utilisateur sélectionne un scraping spécifique pour afficher les détails (HTML, balisage, chronométrage)
- L'utilisateur analyse les données et peut éventuellement lancer une nouvelle tentative pour les scraping ayant échoué
Spécifications Techniques
Stack recommandé :
- Frontend : Bolt.new (anciennement Replit) pour le prototypage rapide
- Backend : Langage pris en charge par Bolt.new (par exemple, Python, Node.js)
- Base de données : À déterminer en fonction des capacités de Bolt.new
- Outils de scraping : À déterminer (par exemple, BeautifulSoup, Scrapy pour Python)
- Planification : À mettre en œuvre (par exemple, tâches cron ou un système de file d'attente des tâches)
Décisions techniques :
- Utiliser Bolt.new pour un développement de prototype rapide
- Mettre en œuvre une interface utilisateur basée sur des cartes pour l'affichage des casinos
- Créer des modales pour les informations détaillées sur les machines à sous
- Développer un système de scraping flexible avec des options à la demande et programmées
- Concevoir une interface de débogage complète pour l'analyse du scraping
Points de Terminaison API
N/A
Schéma de Base de Données
N/A
Structure de Fichiers
/
├── frontend/
│ ├── pages/
│ │ ├── index.js
│ │ ├── casinos.js
│ │ ├── slots.js
│ │ ├── scraping-results.js
│ │ └── debug.js
│ ├── components/
│ │ ├── CasinoCard.js
│ │ ├── SlotModal.js
│ │ ├── SearchFilter.js
│ │ └── DebugView.js
│ └── styles/
│ └── main.css
├── backend/
│ ├── routes/
│ │ ├── csv_upload.js
│ │ ├── scraping.js
│ │ └── export.js
│ ├── models/
│ │ ├── casino.js
│ │ └── slot.js
│ ├── services/
│ │ ├── scraper.js
│ │ └── scheduler.js
│ └── utils/
│ └── csv_parser.js
├── config/
│ └── database.js
└── package.json
Plan de Mise en Œuvre
- Configurer le projet en utilisant Bolt.new
- Mettre en œuvre la structure de base du frontend (pages et composants)
- Créer la fonctionnalité de téléchargement CSV
- Développer la page d'affichage des données des casinos avec la recherche et le filtrage
- Mettre en œuvre le système de scraping des données des jeux de machines à sous
- Créer le système de planification pour le scraping
- Développer l'interface de débogage
- Mettre en œuvre la visualisation des données pour les casinos et les machines à sous
- Ajouter la fonctionnalité d'exportation des fichiers CSV
- Effectuer des tests approfondis et corriger les bugs
- Peaufiner l'interface utilisateur et l'expérience
- Préparer le prototype pour la démonstration ou le développement ultérieur
Stratégie de Déploiement
Informations non disponibles dans la conversation.
Justification de la Conception
Les décisions de conception de ce prototype privilégient le développement rapide et la flexibilité. Bolt.new a été choisi pour le prototypage rapide d'une application web. L'interface utilisateur basée sur des cartes pour les casinos et les vues détaillées des machines à sous sous forme de modales offrent une expérience utilisateur simple et intuitive. L'interface de débogage complète et les options de scraping flexibles (à la demande et programmées) ont été incluses pour faciliter le développement et les tests. La décision de garder les fonctionnalités de gestion des données simples (pas de mises à jour pilotées par l'utilisateur) est alignée avec la nature de prototype du projet, en se concentrant sur la validation des fonctionnalités de base.