Come avere i tuoi risultati di calcio e il tuo sistema statistico con il software libero

A tutti gli amanti del calcio piace essere informati, vogliamo conoscere le statistiche ed i risultati delle nostre squadre del cuore, al momento ci sono molte informazioni a livello di Squadre di Calcio da quando si giocano la Copa America Centenario e l'Eurocup, quindi Ho inventato i miei punteggi di calcio e il copione delle statistiche. euro2016

Il nostro amico scherzocamp Ha una recensione abbastanza avanzata su Apis di calcio open source, quindi ottenere le informazioni da è stato un po 'semplice per me, in generale sappiamo di sei sviluppo / dati ospitati su GitHub e due API gratuite che ci consentono di accedere dati dello sport più bello del mondo e sono:

  • Dati Open Source su GitHub
    • openfootball - football.db
    • jokecamp / FootballData
    • soccerstats.us
    • itacalcio
    • fantastico-calcio
    • calcio-cli
  • API gratuita
    • football-data.org (API RESTful)
    • Sports Open Data (Serie A italiana)

Rivedrò ciascuno di loro, perché scherzocamp Ha già fatto un'ottima recensione, che mi ha aiutato ad iniziare più facilmente questo percorso e in questo modo a raggiungere l'obiettivo che mi ero prefissato all'inizio. Anche se ha anticipato che per questo caso specifico seleziona calcio-data.org una grande API che ha creato Daniele Freitag, inoltre che userò php, il noto ambiente LAMP e alcune classi libere.

Senza ulteriori indugi, parliamo di ciascuno dei dati e delle API gratuite che abbiamo per estrarre informazioni sul calcio:

  • openfootball - football.db: È un database gratuito e open source, a disposizione di tutti gli appassionati di calcio, è composto da dati storici, calendari delle partite, squadre e giocatori, è l'unione di tanti dati e tanti collaboratori. Il suo creatore Gerald Bauer al creatore è un grande appuntamento con la ferma intenzione di diventare il più grande open data nella storia del calcio.

Un esempio dei dati che si possono ottenere da questo repository abbiamo:

[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

Analogamente, calcio aperto È costituito dai seguenti repository:

  1. https://github.com/footballcsv
  2. https://github.com/openfootball
  3. https://github.com/rsssf
  4. https://github.com/footballdata
  • jokecamp / FootballData: È un database creato da scherzocamp e ciò consente l'accesso alle tue informazioni scaricando i tuoi dati tramite CSV o con richieste JSON. Questo database è orientato alla Premier League, ma contiene anche molte informazioni sull'EuroCup.
  • soccerstats.itÈ un database che include più repository Github, in cui vengono divulgati i dati di più campionati mondiali, oltre a tutti i campionati mondiali di calcio. L'analizzatore di database è scritto in Python e apparentemente estrae le informazioni dal file Fondazione di statistica Rec.Sport.Soccer (RSS SF).
  • itacalcio: È un database che include molte informazioni sui campionati e sui campionati inglesi, allo stesso modo ci sono i dati dei campionati europei come (Spagna, Germania, Italia e Paesi Bassi). È un file csv che contiene tutte le informazioni ed è costantemente aggiornato.
  • fantastico-calcio: Si tratta di una vasta raccolta di dati sul calcio (squadre nazionali e internazionali, club, calendari delle partite, giocatori, stadi, tra gli altri). È costituito da un elenco di archivi
  • calcio-cli: Questo senza dubbio deve essere il preferito per gli amanti della console. Tutti i risultati di calcio dal tuo terminale, grazie alle meraviglie di Python.
  • Sport Open Data: Si tratta di un'api creata nel 2015 da Paolo Riva e Riccardo Quatra, per sopperire alla mancanza di dati specialistici della Lega Italiana e renderla totalmente gratuita. Questa eccellente API ci fornisce un'API REST JSON, che ci dà la possibilità di consultare, analizzare e gestire i dati memorizzati nel database di Sports Open Data. Il motto di questa organizzazione è "Dati gratuiti creati dagli utenti per gli utenti".
  • calcio-data.org: È una magnifica API RESTful che contiene molti dati che vengono costantemente aggiornati. Puoi acquistare un file CHIAVE API gratuita semplicemente registrandoti che ti darà anche supporto CORS. Senza dubbio, è un APi estremamente completo e maturo con un ottimo lavoro da parte del suo creatore, molti servizi e applicazioni lo includono già come riferimento per i loro servizi.

La possibilità di avere dati aggiornati, organizzati, con accesso facile e veloce, lo rende una delle migliori API gratuite per quanto riguarda il calcio, inoltre, football-data ha un'ottima documentazione, che permette alla tua linea di apprendimento di essere molto veloce.

Tra le funzionalità che ci offre abbiamo:

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

Alcuni esempi delle chiamate offerte da questa API sono:

Esempio di output JSON per le informazioni sulla squadra di calcio:

{
   "_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"
}

Una volta completata questa revisione per ciascuna delle API e dei dati che ho conosciuto nel mondo del software libero, ci mettiamo al lavoro per avere il nostro script PHP semplice ed esemplare che ci consenta di vedere alcuni dati delle nostre squadre ed eventi preferiti.

Il primo passo è installa LAMP ma puoi anche usare nginx come server web, devi avere un editor di testo a portata di mano, sai che mi piace testo sublime Sebbene non sia gratuito, funziona su Linux ma sei libero di usare quello che vuoi nano, notepadqq, atom, scribes tra gli altri.

Vado ad aiutare me stesso da una libreria che ho appena incontrato phplib-calcio-data e che ha una base per la comunicazione con i dati del calcio, sarò onesto, prima di iniziare a scrivere questo articolo pensavo che sarebbe stato più complicato ma questa libreria ha reso la mia vita molto facile, quindi spiegheremo solo il esempio che ci offrono e ne aggiungeremo qualche extra a scopo didattico.

Il primo passo che faremo è clonare il repository git di questa libreria.

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

Ci troviamo nella cartella della libreria e modifichiamo il file config.ini con l'API KEY che otteniamo quando ci registriamo in football-data e che arriva alla nostra posta.

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

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

Questo file di configurazione ci consentirà in seguito di comunicare l'API con la nostra applicazione.

Questa libreria di esempio è composta da 5 file importanti.

  • config.ini: che salva le informazioni API e che in questo passaggio abbiamo già modificato.
  • FootballData.php: questa classe di servizi incapsula l'API REST football-data.org. Cioè, costruisce la comunicazione tra l'applicazione e l'API, contiene anche diversi metodi che ci permetteranno di consultare vari dati dall'API, come l'intera stagione di un campionato specifico.
  • Socceroason.php: Questa classe implementa le chiamate relative alle informazioni di partite e campionati.
  • Team.php: questa classe implementa le chiamate relative alle informazioni delle squadre.
  • index.php: qual è la classe principale e quella che chiama ciascuno dei metodi implementati nelle classi spiegate sopra. In fondo è la classe che dobbiamo toccare se vogliamo cambiare i dati da mostrare, per il nostro esempio prenderemo la struttura iniziale e semplicemente la adatteremo all'EuroCup.

euro

Con questa piccola modifica che ho fatto, possiamo già avere i risultati di Euro 2016, ma senza dubbio possiamo essere più creativi e aggiungere funzionalità, cicli, query ad altre api tra le altre cose, che sicuramente ti mostrerò in seguito. Per il momento spero che ci mostrino le loro creazioni.


Lascia un tuo commento

L'indirizzo email non verrà pubblicato. I campi obbligatori sono contrassegnati con *

*

*

  1. Responsabile dei dati: Miguel Ángel Gatón
  2. Scopo dei dati: controllo SPAM, gestione commenti.
  3. Legittimazione: il tuo consenso
  4. Comunicazione dei dati: I dati non saranno oggetto di comunicazione a terzi se non per obbligo di legge.
  5. Archiviazione dati: database ospitato da Occentus Networks (UE)
  6. Diritti: in qualsiasi momento puoi limitare, recuperare ed eliminare le tue informazioni.

  1.   Pietro Sanz suddetto

    Ciao, ho letto il tuo blog e mi sembra che la pagina di cui parli football-data.org stia bene per un progetto di servizio web che stiamo progettando. Una grande domanda che mi sorge e che non ho potuto chiarire da quanto ho letto è: quanto sono aggiornati i dati su football-data.org, vi faccio un esempio di cosa intendo:

    Weekend, Barcellona - Partita del Real Madrid, diciamo che la partita finisce alle 22:00 di sabato sera con 2-2. Quindi, sapresti come chiarire quando questo risultato sarebbe disponibile per effettuare una richiesta all'API e poter utilizzare tali informazioni nel servizio web?

    Il tipo di servizio che stiamo progettando non è che richiede informazioni in tempo reale, ma se i risultati della giornata in questione fossero disponibili giorni o settimane dopo essere stati prodotti, allora non sarebbe interessante per noi.

    Saluti.
    /Peter.

  2.   Lo sviluppatore web suddetto

    Questo è Luigiys estremamente interessante, non capisco come Google non abbia i tuoi contenuti più in alto poiché ho avuto difficoltà a trovare riferimenti di qualità sulle API sportive. Come dice il tizio qui sotto, Football-Data sembra molto buono. Molte grazie.