Base de données sur plusieurs site

scrapping

a marqué ce sujet comme résolu.

Bonjour à tous !
Je démarre un projet et j’aimerai avoir votre avis. Je suis fan et youtubeur de FIFA et je voulais savoir s’il était possible de creer une API afin d’enregistrer dans une base de données les joueurs avec leurs noms, photo, poste, logo du club, logo du championnat etc (ça je sais que c’est possible) et recuperer sur un autre site leurs prix en temps reel. En gros, sur un site je scrape les données des joueurs et sur un autre je scrape les prix en temps réel. Une question me trotte, comment lier les 2 dans la meme base de données? J’espère que vous m’avez compris :D Merci d’avance

Salut ! Petite information, on ne stocke jamais des images dans une base de données, ce n’est pas son but. Pour la photo et les logos, il te faudra enregistrer leurs chemins de locations (en local ou non, tout dépend ce que tu veux faire).

Bonjour :)

Tu auras probablement 2 scripts de scrapping différents, si tu les fais tourner sur le même serveur ils pourront accéder de la même manière à ta base de données peut importe le nombre de scripts qui utilisent cette base de données ;)

Merci Tonio pour ta réponse. Oui c’est évident, je récupère leur chemins de location.
La question que je me pose est si sur un site je récupere les données des joueurs dans une BDD, est ce possible de récupérer le prix de ces mêmes joueurs en temps réel (mettre à jour chaque heure) et l’enregistrer dans la BDD ou pouvoir l’afficher sur mon site. En gros la question que je me pose est : est il possible de lier les données joueurs récupérées sur un site avec une autre donnée (prix) récupérée sur un autre site.

Le problème c’est que c’est du scrapping, et pas un accès à une base de données déjà existante, donc tu n’auras pas d’identifiant lié à chaque joueur qui aurait pu te servir de clé primaire.. Dans ton cas, les clés primaires de ta table Joueur seront surement "Nom + Prénom + Equipe".. j’ai ajouté équipe pour pouvoir différencier les homonymes (à moins que 2 joueurs avec le même nom + prénoms jouent dans la même équipe.. ^^ )

Donc je pense qu’il te faut 2 tables :

Une table Joueur (id, nom, prénom, équipe …) Une table Prix (id, joueurID, prix…)

Et au moment de l’insertion d’un prix, tu récupères l’ID du joueur ciblé à l’aide des informations nom + prénom + équipe.

C’est une solution mais je ne sais pas si c’est la meilleur :D

EDIT: Par contre, cette méthode t’oblige à mettre régulièrement à jour ta table Joueur pour prendre en compte les changements d’équipe (notamment durant les mercatos)

+1 -0

Merci Drulac et Tonio !

J’ai bien lu vos message. Oui Tonio c’est une bonne idée je vais me pencher dessus. N’étant pas un as je pense bien galérer. Mais au moins vous m’avez prouvé que c’est possible.
Je laisse le sujet ouvert au cas ou d’autres solutions me seront proposées.
Encore merci

Si tu veux une api pour tes joueurs de foot, il y a https://www.api-football.com/ qui est pas mal avec une bonne documentation (que en anglais je crois). Par contre il n’y aura pas les photos de joueurs, après tu peux les scrapper depuis footballdatabase.eu, mais si tu fais ça j’imagine qu’il vaut mieux récupérer toutes les infos directement sur la même source pour pas trop se compliquer la tâche.

+0 -0

Merci CactusHaven, je vais voir pour scrapper sur footballdatabase.eu.
Le problème est que sur FIFA il risque d’y avoir des joueur qui ne sont pas dans footballdatabase.eu.
J’enregistre déjà sur un csv mais enregistrer dans une bdd me servira pour d’autres script. Je vais y jeter un œil merci !

+0 -0

CactusHaven, après voir regardé le site, il y a trop de joueurs dans cette BDD. Sur Fifa, il y a environ 20000 joueurs.
Beaucoup de joueurs sur le site footballdatabase.eu ne me sont d’aucune utilité car ils n’apparaissent pas dans le jeu.
Est ce possible avec plusieurs script de :

  • Pour les joueurs que j’ai besoin, scrapper tous les joueurs sur FIFA avec leur nom/prénom, club, poste, nationalité et prix
  • Sur un autre site, scrapper ces mêmes joueurs avec un attribut en commun (ex : nom prénom clubs) afin de récupérer les liens des images des joueurs ainsi que le logo de leur nationalité et de leur club.
  • Insérer tout cela dans une BDD, dans plusieurs table et les relier avec des clés afin que je puisse afficher dans mon html le joueur demandé avec tous les attributs qui lui correspond ?

Merci par avance

Pour les joueurs que j’ai besoin, scrapper tous les joueurs sur FIFA avec leur nom/prénom, club, poste, nationalité et prix

Oui c’est possible si tu as une liste complète des joueurs de FIFA tu va juste récupérer les joueurs dont tu as besoin sur footballdatabase.eu. Après, footballdatabase.eu ne donne pas les prix, ça il faudra utiliser une autre source.

Sur un autre site, scrapper ces mêmes joueurs avec un attribut en commun (ex : nom prénom clubs) afin de récupérer les liens des images des joueurs ainsi que le logo de leur nationalité et de leur club.

Tu pourrais récupérer les liens des images des joueurs et le drapeau de leur pays sur footballdatabase.eu, par contre il n’y a que le nom du club dans lequel le joueurs joue.

Insérer tout cela dans une BDD, dans plusieurs table et les relier avec des clés afin que je puisse afficher dans mon html le joueur demandé avec tous les attributs qui lui correspond ?

Je ne sais pas si c’est la meilleur idée, parce que dès qu’un joueur change de club il te faudrait regénérer ta BDD ou alors un script qui va check de temps en temps si il y a eu des modifications sur les joueurs de ta BDD sur footballdatabase.eu et va mettre à jour les entrée correspondantes de ta BDD. Utiliser une api sur une BDD existante aurait été plus simple.

Sur api-football.com apparement tu as le nom du joueur, sa photo et le club dans lequel il joue. (doc)

Sinon directement sur le site transfermarkt.fr quand tu vas sur le profil d’un joueur tu devrais avoir toutes les infos dont tu as besoin, (photo, prix, club, logo, etc…), donc sinon construit ta BDD directement depuis transfermarkt.fr et tu la mets à jour chaque semaine par exemple pour avoir les changements de clubs.

+0 -0

Bonjour Je te remercie CactusHaven, mais il y a un truc que je ne comprends pas ou que je ne sais pas faire.

  • Je récupère tous les joueurs qui sont dans le jeu FIFA cela ne me pose aucun problème.
  • Je récupère les logos et images pas de problème non plus.
    Mais comment récupérer seulement les images des joueurs de FIFA ainsi que leur club et leur nationalité? Enfin comment s’y prendre? Merci d’avance
Connectez-vous pour pouvoir poster un message.
Connexion

Pas encore membre ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte