Comment avoir votre propre système de résultats et de statistiques de football avec le logiciel libre

Tous les amateurs de football aiment être informés, nous voulons connaître les statistiques et les résultats de nos équipes préférées, en ce moment beaucoup d'informations circulent au niveau des équipes de football depuis la Copa America Centenario et l'Eurocopa, donc J'ai créé mon propre script de scores et de statistiques de football. euro2016

Notre ami blague Il a un examen assez avancé sur les Apis de football open source, donc obtenir les informations était un peu simple pour moi, en général, nous connaissons six développements / données hébergés sur github et deux api gratuites qui nous permettent d'accéder aux données les plus belles. sport dans le monde et sont:

  • Données Open Source sur github
    • openfootball - football.db
    • jokecamp / FootballData
    • soccerstats.us
    • données de football
    • super-football
    • football-cli
  • API gratuite
    • football-data.org (API RESTful)
    • Sports Open Data (Serie A italienne)

Je vais passer en revue chacun d'eux, car blague Il a déjà fait un excellent bilan, qui m'a aidé à entamer plus facilement cette voie et ainsi à atteindre l'objectif que je m'étais fixé au départ. Bien qu'il prévoyait que pour ce cas précis, sélectionnez données-football.org une excellente API qui a créé Daniel Freitag, aussi que j'utiliserai php, l'environnement LAMP bien connu et quelques classes gratuites.

Sans plus tarder, parlons de chacune des données et des Apis gratuits dont nous disposons pour extraire des informations sur le football:

  • openfootball - football.db: C'est une base de données gratuite et open source, accessible à tous les fans de football, elle est composée de données historiques, d'horaires de matchs, d'équipes et de joueurs, c'est l'union de nombreuses données et de nombreux collaborateurs. Son créateur Gerald Bauer à créateur est une grande rencontre avec la ferme intention de devenir le plus grand open data de l'histoire du football.

Un exemple des données pouvant être obtenues à partir de ce référentiel, nous avons:

[Sat Aug/16]
  12.45  Manchester United    1-2  Swansea City
  15.00  Leicester City       2-2  Everton FC
  15.00  Queens Park Rangers  0-1  Hull City
  15.00  Stoke City           0-1  Aston Villa

De même, football ouvert Il est composé des référentiels suivants:

  1. https://github.com/footballcsv
  2. https://github.com/openfootball
  3. https://github.com/rsssf
  4. https://github.com/footballdata
  • jokecamp / FootballData: C'est une base de données créée par blague et qui permet d'accéder à vos informations soit en téléchargeant vos données via CSV ou avec des requêtes JSON. Cette base de données est orientée vers la Premier League, mais elle contient également de nombreuses informations sur l'EuroCup.
  • footballstats.usIl s'agit d'une base de données qui comprend plusieurs référentiels Github, dans lesquels sont divulguées les données de plusieurs ligues du monde, en plus de tous les championnats du monde de football. L'analyseur de base de données est écrit en Python et extrait apparemment des informations du Fondation des statistiques Rec.Sport.Soccer (RSSSF).
  • données de football: C'est une base de données qui contient beaucoup d'informations sur les ligues et championnats anglais, de la même manière qu'il existe des données de ligues européennes telles que (Espagne, Allemagne, Italie et Pays-Bas). C'est un fichier csv qui contient toutes les informations et est constamment mis à jour.
  • super-football: Il s'agit d'une vaste collection de données sur le football (équipes nationales et internationales, clubs, horaires des matchs, joueurs, stades, entre autres). Il est constitué d'une liste de référentiels
  • football-cli: Ceci doit sans aucun doute être le favori des amateurs de console. Tout le football résulte de votre terminal, grâce aux merveilles de python.
  • Données ouvertes sportives: C'est une API créée en 2015 par Paolo Riva et Riccardo Quatra, pour compenser le manque de données spécialisées de la Ligue italienne et pour être totalement libre. Cette excellente API nous fournit une API JSON REST, qui nous donne la possibilité de consulter, analyser et gérer les données stockées dans la base de données Sports Open Data. La devise de cette organisation est «Données gratuites créées par les utilisateurs pour les utilisateurs».
  • données-football.org: C'est une magnifique API RESTful qui contient beaucoup de données constamment mises à jour. Vous pouvez acheter un CLÉ API gratuite simplement en vous inscrivant, ce qui vous apportera également un soutien CORS. Sans aucun doute, c'est un APi extrêmement complet et mature avec un excellent travail de son créateur, de nombreux services et applications l'incluent déjà comme référence pour leurs services.

La possibilité d'avoir des données mises à jour et organisées, avec un accès rapide et facile en fait l'une des meilleures API gratuites concernant le football.De plus, football-data dispose d'une excellente documentation, ce qui permet à sa ligne d'apprentissage d'être très rapide.

Parmi les fonctionnalités qu'il nous offre, nous avons:

/soccerseasons/
/soccerseasons/{id}/ranking
/soccerseasons/{id}/fixtures
/fixtures
/soccerseasons/{id}/teams
/teams/{id}
/teams/{id}/fixtures/

Voici quelques exemples d'appels proposés par cette API:

Exemple de sortie JSON pour les informations de l'équipe de football:

{
   "_links":{
      "self":{
         "href":"http://api.football-data.org/v1/teams/5"
      },
      "fixtures":{
         "href":"http://api.football-data.org/v1/teams/5/fixtures"
      },
      "players":{
         "href":"http://api.football-data.org/v1/teams/5/players"
      }
   },
   "name":"FC Bayern München",
   "code":"FCB",
   "shortName":"Bayern",
   "squadMarketValue":"559,100,000 €",
   "crestUrl":"http://upload.wikimedia.org/wikipedia/commons/c/c5/Logo_FC_Bayern_München.svg"
}

Une fois cet examen effectué pour chacune des API et des données que j'ai connues du monde du logiciel libre, nous nous mettons au travail pour avoir notre script PHP simple et exemplaire qui nous permet de voir certaines données de nos équipes et événements préférés.

La première étape est installer LAMP mais vous pouvez aussi utiliser nginx en tant que serveur web, vous devez avoir un éditeur de texte sous la main, vous savez que j'aime ça texte sublime Bien que ce ne soit pas gratuit, cela fonctionne sous Linux mais vous êtes libre d'utiliser ce que vous voulez nano, notepadqq, atom, scribes entre autres.

Je vais m'aider dans une librairie que je viens de rencontrer phplib-football-données et qu'il a une base pour la communication avec les données de football, je serai honnête, avant de commencer à écrire cet article, je pensais que ce serait plus compliqué mais cette bibliothèque m'a rendu la vie très facile, donc nous allons seulement expliquer le exemple qu'ils nous offrent et nous ajouterons un supplément à des fins éducatives.

La première étape que nous allons faire est de cloner le référentiel jet de cette librairie.

git clone git://github.com/dfrt82/phplib-football-data.git

Nous nous localisons dans le dossier de la bibliothèque et éditons le fichier config.ini avec l'API KEY que nous obtenons lorsque nous nous inscrivons dans football-data et qui parvient à notre messagerie.

cd phplib-football-data/
sudo subl3 config.ini

baseUri = 'http://api.football-data.org/v1/';
authToken = 'YOUR_AUTH_TOKEN';

Ce fichier de configuration nous permettra ultérieurement de communiquer l'API avec notre application.

Cette bibliothèque d'échantillons est composée de 5 fichiers importants.

  • config.ini: qui enregistre les informations de l'API et que dans cette étape nous avons déjà édité.
  • FootballData.php: cette classe de service encapsule l'API REST football-data.org. En d'autres termes, il construit la communication entre l'application et l'API, il contient également plusieurs méthodes qui nous permettront de consulter diverses données de l'API, comme la saison entière d'une ligue spécifique.
  • Socceroason.php: Cette classe implémente les appels liés à l'information des matchs et des ligues.
  • Team.php: Cette classe implémente les appels liés aux informations des équipes.
  • index.php: Quelle est la classe principale et celle qui appelle chacune des méthodes implémentées dans les classes expliquées ci-dessus. En gros c'est la classe que nous devons toucher si nous voulons changer les données à afficher, pour notre exemple nous prendrons la structure initiale et l'adapterons simplement à l'EuroCup.

Eurocopa

Avec cette petite modification que j'ai apportée, nous pouvons déjà avoir les résultats de l'Euro 2016, mais sans aucun doute nous pouvons être plus créatifs et ajouter des fonctionnalités, des cycles, des requêtes à d'autres api entre autres, que je vous montrerai sûrement plus tard. Pour le moment j'espère qu'ils nous montreront leurs créations.


Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont marqués avec *

*

*

  1. Responsable des données: Miguel Ángel Gatón
  2. Finalité des données: Contrôle du SPAM, gestion des commentaires.
  3. Légitimation: votre consentement
  4. Communication des données: Les données ne seront pas communiquées à des tiers sauf obligation légale.
  5. Stockage des données: base de données hébergée par Occentus Networks (EU)
  6. Droits: à tout moment, vous pouvez limiter, récupérer et supprimer vos informations.

  1.   Pierre Sanz dit

    Salut, j'ai lu votre blog, et il me semble que la page que vous mentionnez football-data.org a l'air bien pour un projet de service Web que nous concevons. Une grande question qui se pose à moi et que je n'ai pas pu clarifier à partir de ce que j'ai lu est: dans quelle mesure les données sur football-data.org sont-elles mises à jour, je vous donne un exemple de ce que je veux dire:

    Week-end, Barcelone - Match du Real Madrid, disons que le match se termine à 22h00 un samedi soir avec 2-2. Alors, sauriez-vous comment clarifier quand ce résultat serait disponible pour faire une demande à l'API et pouvoir utiliser cette information dans le service Web?

    Le type de service que nous concevons n'est pas qu'il nécessite des informations en temps réel, mais si les résultats de la journée en question sont disponibles des jours ou des semaines après leur production, alors ce ne serait pas intéressant pour nous.

    Salutations.
    /Pierre.

  2.   Le Développeur Web dit

    C'est extrêmement intéressant Luigys, je ne comprends pas comment Google n'a pas votre contenu plus haut car j'ai eu du mal à trouver des références de qualité sur les API sportives. Comme le dit le type ci-dessous, Football-Data a l'air très bien. Merci beaucoup.