Kako imati svoj vlastiti nogometni rezultat i statistički sistem sa besplatnim softverom

Svi ljubitelji nogometa vole biti informirani, želimo znati statistiku i rezultate naših omiljenih timova, trenutno postoji mnogo informacija na nivou fudbalskih timova jer se igraju Copa America Centenario i Eurocup, tako da Došao sam sa svojim scenarijem za nogometne rezultate i statistike. 2016 eura

Naš prijatelj jokecamp Ima prilično naprednu recenziju o nogometnom Apisu otvorenog koda, pa mi je dobivanje informacija bilo pomalo jednostavno, općenito znamo za šest razvoja / podataka hostiranih na github-u i dva besplatna api-a koji nam omogućavaju pristup Podaci o najljepšem sportu na svijetu su:

  • Podaci otvorenog koda na githubu
    • openfootball - football.db
    • jokecamp / FootballData
    • soccerstats.us
    • engsoccerdata
    • super-fudbal
    • soccer-cli
  • Besplatni API
    • football-data.org (RESTful API)
    • Sportski otvoreni podaci (Italijanska Serija A)

Pregledaću svaki od njih, jer jokecamp Već je napravio odličan pregled, koji mi je pomogao da lakše krenem tim putem i na taj način ispunim cilj koji sam postavio na početku. Iako je predvidio da se za ovaj konkretan slučaj odabere football-data.org sjajan API koji je stvorio Daniel Freitag, takođe da ću koristiti php, dobro poznato LAMP okruženje i neke besplatne časove.

Bez daljnjeg razgovora, razgovarajmo o svakom od podataka i besplatnom Apisu koji moramo izvući informacije u vezi s nogometom:

  • openfootball - football.db: To je besplatna baza podataka otvorenog koda, koja je dostupna svim ljubiteljima nogometa, sastoji se od povijesnih podataka, rasporeda utakmica, timova i igrača, predstavlja spoj mnogih podataka i mnogih suradnika. Njegov tvorac Gerald Bauer sa tvorcem sjajno se zabavlja s čvrstom namjerom da postane najveći otvoreni podatak u povijesti nogometa.

Primjer podataka koji se mogu dobiti iz ovog spremišta imamo:

[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

Slično tome, openfootball Sastoji se od sljedećih spremišta:

  1. https://github.com/footballcsv
  2. https://github.com/openfootball
  3. https://github.com/rsssf
  4. https://github.com/footballdata
  • jokecamp / FootballData: To je baza podataka koju je napravio jokecamp a to omogućava pristup vašim informacijama bilo preuzimanjem podataka putem CSV-a ili sa JSON zahtjevima. Ova baza podataka orijentirana je na Premier ligu, ali ima i puno informacija o EuroCupu.
  • soccerstats.usRiječ je o bazi podataka koja uključuje više Github-ovih spremišta, u kojoj se pored svih nogometnih svjetskih prvenstava otkrivaju podaci iz više svjetskih liga. Analizator baze podataka napisan je na Pythonu i očito izvlači informacije iz Rec.Sport.Soccer Soccer Foundation (RSSSF).
  • engsoccerdata: To je baza podataka koja uključuje puno informacija o engleskim ligama i prvenstvima, na isti način na koji postoje podaci iz evropskih liga kao što su (Španija, Njemačka, Italija i Holandija). To je CSV datoteka koja ima sve informacije i stalno se ažurira.
  • super-fudbal: To je velika kolekcija nogometnih podataka (nacionalni i međunarodni timovi, klubovi, rasporedi utakmica, igrači, stadioni, između ostalog). Sastoji se od liste spremišta
  • soccer-cli: Ovo bez sumnje mora biti omiljeno za ljubitelje konzola. Svi fudbalski rezultati s vašeg terminala, zahvaljujući čudima pythona.
  • Sport Otvoreni podaci: Riječ je o api-u koji su 2015. stvorili Paolo Riva i Riccardo Quatra, kako bi nadoknadio nedostatak specijaliziranih podataka Talijanske lige i učinio ga potpuno besplatnim. Ovaj izvrsni API pruža nam JSON REST API, koji nam daje mogućnost konsultovanja, analize i upravljanja podacima pohranjenim u bazi podataka Sports Open Data. Moto ove organizacije je "Besplatni podaci koje korisnici kreiraju za korisnike".
  • football-data.org: To je veličanstveni RESTful API koji sadrži puno podataka koji se neprestano ažuriraju. Možete kupiti Besplatni API KLJUČ samo registracijom koja će vam pružiti i CORS podršku. Bez sumnje, to je izuzetno cjelovit i zreo APi s izvrsnim poslom svog tvorca, mnogi servisi i aplikacije već ga uključuju kao referencu za svoje usluge.

Mogućnost ažuriranja, organiziranih podataka, s brzim i lakim pristupom, čini ga jednim od najboljih besplatnih API-ja u vezi s nogometom, uz to nogometni podaci imaju izvrsnu dokumentaciju, što omogućava da vaša linija za učenje bude vrlo brza.

Među funkcionalnostima koje nam nudi imamo:

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

Neki primjeri poziva koje nudi ovaj API su:

Primjer JSON rezultata za informacije o nogometnom timu:

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

Jednom kada je ovaj pregled završen za svaki od API-ja i podataka koje poznajem u svijetu besplatnog softvera, primamo se posla kako bismo dobili našu jednostavnu i uzornu PHP skriptu koja nam omogućava da vidimo neke podatke iz naših omiljenih timova i događaja.

Prvi korak je instalirajte LAMP ali možete i koristiti nginx kao web server morate imati pri ruci uređivač teksta, znate da mi se sviđa uzvišeni tekst Iako nije besplatan, radi na Linuxu, ali možete koristiti sve što želite, nano, notepadqq, atom, pisare.

Pomoći ću si iz knjižare koju sam upravo upoznao phplib-football-podaci i da ima osnovu za komunikaciju s nogometnim podacima, bit ću iskren, prije nego što sam počeo pisati ovaj članak, mislio sam da će biti složeniji, ali ova biblioteka mi je jako olakšala život, pa ćemo objasniti samo na primjer da nam oni nude, a mi ćemo dodati nešto dodatnog u obrazovne svrhe.

Prvi korak koji ćemo učiniti je kloniranje spremišta git ove knjižare.

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

Lociramo se u fasciklu biblioteke i uređujemo datoteku config.ini pomoću KEY API-ja koji dobijamo prilikom registracije u nogometnim podacima i koji stiže na našu poštu.

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

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

Ova konfiguracijska datoteka kasnije će nam omogućiti da komuniciramo API s našom aplikacijom.

Ova knjižnica uzoraka sastoji se od 5 važnih datoteka.

  • config.ini: Što sprema informacije o API-ju i koje smo u ovom koraku već uredili.
  • FootballData.php: Ova klasa usluge obuhvaća REST API-je football-data.org. Drugim riječima, gradi komunikaciju između aplikacije i API-ja, također sadrži nekoliko metoda koje će nam omogućiti da potražimo različite podatke iz API-ja, poput cijele sezone određene lige.
  • Socceroason.php: Ova klasa provodi pozive vezane za informacije o utakmicama i ligama.
  • Team.php: Ova klasa implementira pozive koji se odnose na informacije timova.
  • index.php: Koja je glavna klasa i koja poziva svaku od metoda koje su implementirane u gore objašnjene klase. U osnovi je klase koju moramo dodirnuti ako želimo promijeniti podatke koji će se prikazivati, za naš primjer ćemo uzeti početnu strukturu i jednostavno je prilagoditi EuroCupu.

Eurocup

Ovom malom modifikacijom koju sam napravio, već možemo imati rezultate Euro 2016, ali bez sumnje možemo biti kreativniji i dodati funkcionalnosti, cikluse, upite na druge api, između ostalog, što ću vam sigurno pokazati kasnije. Trenutno se nadam da će nam pokazati svoje kreacije.


Ostavite komentar

Vaša e-mail adresa neće biti objavljena. Obavezna polja su označena sa *

*

*

  1. Za podatke odgovoran: Miguel Ángel Gatón
  2. Svrha podataka: Kontrola neželjene pošte, upravljanje komentarima.
  3. Legitimacija: Vaš pristanak
  4. Komunikacija podataka: Podaci se neće dostavljati trećim stranama, osim po zakonskoj obavezi.
  5. Pohrana podataka: Baza podataka koju hostuje Occentus Networks (EU)
  6. Prava: U bilo kojem trenutku možete ograničiti, oporaviti i izbrisati svoje podatke.

  1.   Peter Sanz rekao je

    Zdravo, čitao sam vaš blog i čini mi se da stranica koju spominjete football-data.org izgleda dobro za projekt web usluga koji dizajniramo. Veliko pitanje koje mi se nameće i koje iz pročitanog nisam uspio razjasniti je: koliko su ažurni podaci na football-data.org, dajem vam primjer onoga što mislim:

    Vikend, utakmica Barcelona - Real Madrid, recimo da utakmica završava u 22:00 u subotu navečer sa 2-2. Pa, da li biste znali kako pojasniti kada će ovaj rezultat biti dostupan za podnošenje zahtjeva API-ju i mogućnost korištenja tih informacija u web usluzi?

    Vrsta usluge koju dizajniramo nije da zahtijeva informacije u stvarnom vremenu, ali ako su rezultati dotičnog dana dostupni danima ili tjednima nakon što su proizvedeni, onda to za nas ne bi bilo zanimljivo.

    A pozdrav.
    / Peter.

  2.   Web Developer rekao je

    Ovo je izuzetno interesantno Luigys, ne razumijem kako Google nema vaš sadržaj na višem mjestu jer sam imao poteškoća da pronađem kvalitetne reference na sportskim API-jima. Kao što kolega ispod kaže, Football-Data izgleda veoma dobro. Hvala puno.