Hur du har ditt eget fotbollsresultat och statistiksystem med fri programvara

Alla fotbollsälskare vill bli informerade, vi vill veta statistik och resultat för våra favoritlag, just nu finns det mycket information på fotbollsnivå sedan Copa America Centenario och Eurocup spelas, så Jag kom med mitt eget fotbollsresultat och statistikmanus. euro2016

Vår vän jokecamp Den har en ganska avancerad granskning av Apis med öppen källkodsfotboll, så det var lite enkelt att få informationen från, i allmänhet känner vi till sex utveckling / data värd på github och två gratis api som ger oss tillgång data från den vackraste sporten i världen och är:

  • Öppen källkodsdata på github
    • openfootball - football.db
    • jokecamp / FootballData
    • soccerstats.us
    • engsoccerdata
    • fantastisk-fotboll
    • fotboll-cli
  • Gratis API
    • football-data.org (RESTful API)
    • Sport Open Data (italiensk Serie A)

Jag kommer att granska var och en av dem, för jokecamp Det har redan gjort en bra översyn, vilket har hjälpt mig att starta denna väg lättare och på detta sätt uppfylla det mål som jag satte i början. Även om han förväntade sig att för detta specifika fall välja football-data.org ett bra API som skapades Daniel Freitag, också att jag kommer att använda php, den välkända LAMP-miljön och några gratis klasser.

Utan vidare ado, låt oss prata om varje data och gratis Apis som vi måste extrahera information om fotboll:

  • openfootball - football.db: Det är en gratis och öppen källkodsdatabas, som är tillgänglig för alla fotbollsfans, den består av historisk data, spelscheman, lag och spelare, det är föreningen av många data och många medarbetare. Dess skapare Gerald Bauer till skapare är fantastisk dejting med den fasta avsikten att bli den största öppna data i fotbollens historia.

Ett exempel på de data som kan erhållas från det här förvaret har vi:

[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

På samma sätt öppen fot Den består av följande arkiv:

  1. https://github.com/footballcsv
  2. https://github.com/openfootball
  3. https://github.com/rsssf
  4. https://github.com/footballdata
  • jokecamp / FootballData: Det är en databas gjord av jokecamp och det ger åtkomst till din information antingen genom att ladda ner dina data via CSV eller med JSON-förfrågningar. Denna databas är inriktad på Premier League, men den har också mycket information om EuroCup.
  • fotbollsstatistik.usDet är en databas som innehåller flera Github-arkiv, där data från flera ligor i världen släpps, förutom alla fotbolls-VM. Databasanalysatorn är skriven i Python och uppenbarligen extraherar information från Rec.Sport.Soccer Statistics Foundation (RSSSF).
  • engsoccerdata: Det är en databas som innehåller mycket information om de engelska ligorna och mästerskapen, på samma sätt finns det data från europeiska ligor som (Spanien, Tyskland, Italien och Nederländerna). Det är en csv-fil som har all information och uppdateras ständigt.
  • fantastisk-fotboll: Det är en stor samling fotbollsdata (nationella och internationella lag, klubbar, matchscheman, spelare, arenor bland andra). Den består av en lista med förvar
  • fotboll-cli: Detta måste utan tvekan vara favoriten för konsolälskare. Alla fotbollsresultat från din terminal tack vare pythons underverk.
  • Sport Open Data: Det är en api skapad 2015 av Paolo Riva och Riccardo Quatra, för att kompensera för bristen på specialiserade data från den italienska ligan och för att vara helt gratis. Detta utmärkta API ger oss ett JSON REST API, vilket ger oss möjlighet att konsultera, analysera och hantera data som lagras i Sports Open Data-databasen. Organisationens motto är "Gratis data skapad av användare för användare."
  • football-data.org: Det är en magnifik RESTful API som innehåller mycket data som ständigt uppdateras. Du kan köpa en Gratis API-NYCKEL bara genom att registrera dig vilket också ger dig CORS-stöd. Utan tvekan är det en extremt komplett och mogen APi med ett fantastiskt verk från dess skapare, många tjänster och applikationer innehåller det redan som en referens för sina tjänster.

Möjligheten att ha uppdaterad, organiserad data med snabb och enkel åtkomst gör den till en av de bästa gratis-API: erna för fotboll. Dessutom har fotbollsdata utmärkt dokumentation, vilket gör att din inlärningslinje kan vara väldigt snabb.

Bland de funktioner som det erbjuder oss har vi:

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

Några exempel på samtal som erbjuds av detta API är:

Exempel på JSON-utdata för fotbollslaginformation:

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

När denna granskning har gjorts för alla API: er och data som jag har känt i världen av fri programvara, börjar vi arbeta med vårt enkla och exemplifierande PHP-skript som gör att vi kan se några data om våra favoritlag och evenemang.

Det första steget är installera LAMP men du kan också använda nginx som webbserver måste du ha en textredigerare till hands, du vet att jag gillar det sublim text Även om det inte är gratis fungerar det på Linux men du är fri att använda vad du vill bland annat nano, notepadqq, atom, scribes.

Jag ska hjälpa mig själv från en bokhandel som jag just träffade phplib-fotboll-data och att det har en grund för kommunikation med fotbollsdata, jag ska vara ärlig, innan jag började skriva den här artikeln trodde jag att det skulle vara mer komplicerat men detta bibliotek har gjort mitt liv väldigt enkelt, så vi kommer bara att förklara exempel som de erbjuder oss och vi kommer att lägga till lite extra för utbildningsändamål.

Det första steget vi ska göra är att klona förvaret i denna bokhandel.

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

Vi befinner oss i biblioteksmappen och redigerar config.ini-filen med KEY API som vi får när vi registrerar oss i fotbollsdata och som når vår e-post.

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

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

Denna konfigurationsfil tillåter oss senare att kommunicera API: et med vår applikation.

Detta provbibliotek består av 5 viktiga filer.

  • config.ini: Vilket sparar API-informationen och vilket i detta steg vi redan har redigerat.
  • FootballData.php: Denna tjänstklass inkapslar REST API för football-data.org. Med andra ord bygger det kommunikation mellan applikationen och API: et, det innehåller också flera metoder som gör det möjligt för oss att konsultera olika data från API: et, till exempel hela säsongen i en viss liga.
  • Socceroason.php: Denna klass genomför samtal som är relaterade till information om matcher och ligor.
  • Team.php: Denna klass implementerar samtal som är relaterade till informationen om lagen.
  • index.php: Vad är huvudklassen och den som kallar var och en av metoderna som implementeras i de klasser som förklaras ovan. I grund och botten är det klassen som vi måste röra vid om vi vill ändra de data som ska visas, för vårt exempel tar vi den ursprungliga strukturen och helt enkelt anpassar den till EuroCup.

Eurocup

Med den här lilla modifieringen som jag gjorde kan vi redan få resultaten av Euro 2016, men utan tvekan kan vi bli mer kreativa och lägga till funktioner, cykler, frågor till andra api bland annat, vilket jag säkert kommer att visa dig senare. Just nu hoppas jag att de visar oss sina skapelser.


Lämna din kommentar

Din e-postadress kommer inte att publiceras. Obligatoriska fält är markerade med *

*

*

  1. Ansvarig för uppgifterna: Miguel Ángel Gatón
  2. Syftet med uppgifterna: Kontrollera skräppost, kommentarhantering.
  3. Legitimering: Ditt samtycke
  4. Kommunikation av uppgifterna: Uppgifterna kommer inte att kommuniceras till tredje part förutom enligt laglig skyldighet.
  5. Datalagring: databas värd för Occentus Networks (EU)
  6. Rättigheter: När som helst kan du begränsa, återställa och radera din information.

      Peter Sanz sade

    Hej, jag har läst din blogg och det verkar som om den sida du nämner football-data.org ser bra ut för ett webbtjänstprojekt som vi utformar. En stor fråga som uppstår för mig och som jag inte har kunnat klargöra utifrån vad jag har läst är: hur uppdaterad är informationen på football-data.org, jag ger dig ett exempel på vad jag menar:

    Weekend, Barcelona - Real Madrid-match, låt oss säga att matchen slutar 22:00 på en lördagskväll med 2-2. Så, skulle du veta hur man klargör när detta resultat skulle vara tillgängligt för att göra en begäran till API och kunna använda den informationen i webbtjänsten?

    Den typ av tjänst vi utformar är inte att den kräver information i realtid, men om resultaten för den aktuella dagen är tillgängliga dagar eller veckor efter att de har producerats, skulle det inte vara intressant för oss.

    En hälsning.
    / Peter.

      Webbutvecklaren sade

    Det här är extremt intressant Luigys, jag förstår inte hur Google inte har ditt innehåll högre upp eftersom jag har haft svårt att hitta kvalitetsreferenser på sport-API:er. Som killen nedan säger ser Football-Data väldigt bra ut. Tack så mycket.