HockeyIQ est une application interactive conçue pour les amateurs de dek hockey et les joueurs. Elle vise à fournir des statistiques détaillées, des classements, des comparaisons d'équipes et de joueurs, ainsi que des prédictions basées sur des données réelles. L'objectif est d'offrir une plateforme intuitive pour analyser les performances des équipes et des joueurs, tout en permettant aux utilisateurs de suivre les matchs et de gérer leurs comptes.
- Amateurs de dek hockey : Pour suivre les performances de leurs équipes et joueurs préférés. Il est aussi possible d'entrer des prédictions.
- Joueurs : Pour analyser leurs propres statistiques et améliorer leurs stratégies.
- Langage principal : Python 3.13
- Framework GUI : PyQt6
- Base de données : MySQL
- Web scraping : Selenium, BeautifulSoup
- Autres bibliothèques : Requests, mysql.connector, mysql-connector-python, dotenv
- Statistiques des joueurs : Affichage des performances détaillées des joueurs.
- Classements des équipes : Classements basés sur les performances des équipes.
- Comparaison : Comparaison des statistiques entre deux équipes ou joueurs.
- Prédictions : Prédictions des résultats des matchs.
- Gestion des comptes utilisateurs : Création, modification et suppression de comptes.
- Calendriers : Affichage de l'horaire présent et passé des matchs.
Le projet est complété, mais avec certaines fonctionnalités qui pourraient être améliorées pour augmenter l'expérience de l'utilisateur. Par rapport au document initial, toutes les fonctionnalités prévues de base sont complètes et fonctionnelles. Bref, c'est fini, mais certaines parties nécessitent encore des améliorations ou des ajouts. Le code est un peu pêle-mêle, il pourrait être plus propre.
- Problèmes de scraping : Parfois, le scraping ne fonctionne pas, il n'est pas 100 % fiable.
- Comparaison de joueurs : La recherche pour la comparaison des joueurs pourrait définitivement être améliorée, pour prendre en compte les calibres et avoir une liste qui montre les joueurs recherchés.
- Optimisation du scraping : Le scraping est un peu lent et non consistant.
- Ajout de graphiques interactifs : Pour visualiser les statistiques des équipes et des joueurs de manière plaisante.
- Base de données et exécutable : L'exécutable du projet fonctionne uniquement quand l'utilisateur a déjà effectué le setup de la base de données. J'aurais aimé faire en sorte que tout fonctionne en un clic, mais j'ai rencontré plusieurs problèmes au cours de la fabrication de l'exécutable du projet.
- Python 3.13
Une fois que Python est installé, veuillez taper ces commandes dans un terminal pour installer les modules nécessaires :
pip install -r requirements.txt pip install pyinstaller pyinstaller --onefile --windowed main.py --add-data "resources:resources"- MySQL
Une fois que la partie précédente est terminée, veuillez passer à ces étapes pour la configuration de la base de données :
- Changez les variables d'environnement dans le fichier
.env, pour qu'elles correspondent à vos paramètres de gestionnaire de base de données. - Veuillez copier-coller les deux scripts dans le dossier
Datadans une console MySQL.
- Visual Studio Code
Si vous rencontrez des problèmes, vérifiez que tous les modules nécessaires sont installés et que l'environnement Python est correctement configuré.
- Ouvrez le projet dans Visual Studio Code.
- Assurez-vous que le fichier principal (
main.py) est ouvert dans l'éditeur. - Cliquez sur l'onglet Run and Debug dans la barre latérale ou appuyez sur
Ctrl+Shift+D(ouCmd+Shift+Dsur Mac). - Cliquez sur Create a launch.json file si ce n'est pas déjà configuré.
- Sélectionnez Python comme environnement.
- Assurez-vous que le chemin du fichier principal (
main.py) est correctement configuré dans le fichierlaunch.json.
- Appuyez sur F5 pour lancer le projet.
Pour tester l'application, vous pouvez utiliser le compte suivant :
- Email : test@gmail.com
- Mot de passe : test
Ce compte est préconfiguré pour vous permettre d'explorer les fonctionnalités de l'application sans avoir à créer un compte.