• Razvoj

Kako ustvariti samodejno posodabljajoče se vsebine o tenisu z API-jem za podatke v realnem času

  • Felix Rose-Collins
  • 5 min read

Uvod

Tenisna tabela rezultatov, ki zastari v nekaj minutah, je slabša kot sploh nobena tabela. Če upravljate športno spletno stran, orodje za fantazijsko ligo ali skupnost navijačev, že poznate privlačnost vsebine v živo: bralci ostanejo dlje, ko se stran spreminja skupaj z igro. Praktičen način za dosego tega je API za podatke o tenisu v živo (vmesnik, ki na zahtevo posreduje podatke o tekmi vaši kodi), ki omogoča, da se strani in widgeti osvežijo sami, ne da bi kdor koli pri tem uporabil tipkovnico. Ta prispevek pojasnjuje, kako razvijalci zgradijo to samodejno posodabljajočo plast in kaj je treba preveriti v viru podatkov, preden zanj napišete eno samo vrstico kode.

Kaj pravzaprav pomeni »samodejno posodabljanje« vsebine?

Samodejno posodabljajoča se vsebina je vsebina, ki sama pridobiva najnovejše podatke, namesto da čaka, da nekdo objavi spremembo. Najbolj jasen primer je widget z rezultatno tablo, ki prikazuje trenutni set, igro in točko brez ročnega posodabljanja.

Mehanizem je preprost. Vaša stran ali strežniški del zahteva podatke iz API-ja, API vrne trenutno stanje, vaša predloga pa ga prikaže. Ponovite to zahtevo po urniku in stran ostane sama po sebi posodobljena.

Večina teniških virov podatkov vrača podatke v formatu JSON (lahka besedilna oblika, ki jo vaša koda lahko razčleni v enem koraku). Prav ta struktura omogoča avtomatizacijo: JSON-ov rezultat se natančno ujema s polji v vašem widgetu, zato nihče ne mora ponovno vnašati rezultata. Začnite z izbiro ene same točke podatkov, ki jo želite ohraniti v realnem času, nato pa okoli nje zgradite en klic končne točke.

Zakaj strukturirani podatki v realnem času premagujejo ročne posodobitve

Strukturirani podatki v realnem času izključijo človeka iz procesa, in to je bistvo. Človek, ki posodablja rezultate med celotnim programom turnirjev ATP ali WTA, ne more slediti desetinam tekem, vsaka ročna sprememba pa pomeni tveganje, da bo objavljena napačna številka.

Strukturiran vir podatkov reši obe težavi hkrati. Podatki prispejo v poimenovana polja (nizi, igre, točke, serviser), tako da vaša koda vedno ve, kaj posamezna vrednost pomeni. Doslednost v velikem obsegu.

To omogoča tudi, da ena integracija poganja več vmesnikov. Isti vir podatkov lahko poganja tabelo rezultatov v živo, stran z razporedom tekem, profil igralca in vgrajeni widget na partnerski spletni strani. Zgradite sloj podatkov enkrat, nato pa ga ponovno uporabite povsod, kjer mora vsebina ostati aktualna.

Katero pokritost morate najprej preveriti?

Pokritost je prva stvar, ki jo je treba preveriti, saj je vir podatkov, ki izpušča tekme, ki zanimajo vaše občinstvo, neuporaben, ne glede na to, kako hiter je. Preverite, katere turneje in vrste tekem so vključene, preden na njihovi podlagi načrtujete karkoli.

Za celovit teniški produkt potrebujete široko pokritost profesionalnega koledarja. Dobra izbira je livetennisapi.com/tennis-live-data-api, ki pokriva turnirje ATP, WTA, Challenger in ITF, tako v posameznem kot v dvojicah. Ta obseg je pomemben: nižje ravni predstavljajo večino teniških tekem, ki se igrajo vsak dan, zato bo tabela rezultatov, ki prikazuje le dogodke najvišje ravni, večino tedna izgledala prazna.

Spoznajte Ranktracker

Platforma "vse v enem" za učinkovito SEO

Za vsakim uspešnim podjetjem stoji močna kampanja SEO. Vendar je ob neštetih orodjih in tehnikah optimizacije težko vedeti, kje začeti. Ne bojte se več, ker imam za vas prav to, kar vam lahko pomaga. Predstavljam platformo Ranktracker vse-v-enem za učinkovito SEO

Končno smo odprli registracijo za Ranktracker popolnoma brezplačno!

Ustvarite brezplačen račun

Ali se prijavite s svojimi poverilnicami

Preden se odločite, preverite tri stvari:

  1. Preverite turnirje. Preverite, ali so vsi prisotni: ATP, WTA, Challenger in ITF.
  2. Preverite vrste tekem. Prepričajte se, da so na voljo tako posamezne kot dvojice.
  3. Preverite podatkovne objekte. Preverite, ali so na voljo razporedi, igralci, rezultati v živo in dogodki v tekmah.

Prilagodite obseg pokrivanja svoji ciljni skupini. Skupnost klubskih teniških igralcev potrebuje nižje ravni; spletna stran, posvečena najpomembnejšim dogodkom, pa morda ne.

Kako pogosto se podatki posodabljajo?

Pogostost posodabljanja določa, kako hitro vir podatkov odraža spremembe na igrišču, in odloča, kako »v živo« se vaša vsebina dejansko zdi. Rezultatna tabla je le toliko aktualna, kolikor so aktualni podatki, na katerih temelji, zato je to številka, ki oblikuje izkušnjo bralca.

Podatke lahko posodabljate na dva načina. Pri načinu »polling« vaša koda v rednih časovnih intervalih poizveduje pri API-ju o trenutnem stanju. Pri načinu »streaming« vam API vsako spremembo posreduje takoj, ko se zgodi.

Polling je primeren za večino vsebin. Rezultatna tabla, ki se osvežuje vsakih nekaj sekund, se navijačem, ki tekmo spremljajo doma, zdi v živo, poleg tega pa ne potrebuje stalne povezave. Za streaming se odločite le, če je vaša logika odvisna od posameznih točk, kjer bi razmik med poizvedbami spremenil delovanje vaše kode. Preden izberete načrt, se odločite, kateri model potrebuje vaša funkcija, saj ta izbira vpliva tako na vašo arhitekturo kot na vaše stroške.

Kakšne omejitve hitrosti in ravni dostopa morate upoštevati pri načrtovanju?

Omejitve hitrosti so zgornje meje števila zahtevkov, ki jih lahko pošljete v danem časovnem oknu, in vplivajo na to, kako oblikujete svoje poizvedovanje. Če jih prezrete, se bo vaš widget pokvaril v najslabšem možnem trenutku: sredi turnirja, pod obremenitvijo.

Učinkovit vzorec je, da z enim klicem zahtevate celoten seznam tekočih tekem, namesto da vsako tekmo poizvedujete posebej. Na ta način stroški vaših zahtev ostanejo nespremenjeni, ne glede na to, ali potekata dve tekmi ali dvajset. En klic, veliko tekem.

Ravni dostopa so prav tako pomembne za načrtovanje. Live Tennis API ponuja brezplačno raven, ki ne zahteva kreditne kartice in zajema rezultate v živo, razporede tekem ter igralce prek JSON-končnih točk, tako da lahko izdelate prototip, preden zavežete proračun. Podrobnejši podatki so na voljo na plačljivih ravneh, vključno z zaključenimi rezultati, zgodovino točk po točkah, tržnimi cenami in modelom verjetnosti zmage. Vsaki želeni funkciji dodelite raven, ki jo ponuja, nato pa preverite, ali omejitve zahtevkov ustrezajo vaši hitrosti osveževanja.

Kako ocenite dokumentacijo pred razvojem?

Kakovost dokumentacije je najjasnejši pokazatelj tega, ali je API varen za razvoj, saj boste ves čas projekta delali z njo. Dobra dokumentacija skrajša integracijo z dni na ure; pomanjkljiva dokumentacija pa preprosto orodje spremeni v igro ugibanj.

Preberite dokumentacijo, preden začnete pisati kodo, in bodite pozorni na nekaj konkretnih stvari:

  1. Poiščite seznam končnih točk. Preverite, ali ima vsak podatkovni objekt, ki ga potrebujete, dokumentirano končno točko.
  2. Preverite vzorčni odgovor. Pravi primer v formatu JSON vam natančno pove, katera polja boste analizirali.
  3. Preberite opredelitve polj. Preden podatke preslikate, se seznanite z njihovo strukturo, da vas kasneje ne bodo presenetile posebnosti, kot so nizi rezultatov, razvrščeni po igralcih.
  4. Poiščite pravila omejitve hitrosti. Preverite, ali so omejitve jasno navedene in niso skrite.
  5. Preizkusite brezplačno stopnjo. Opravite en klic v živo in preglejte odgovor, preden na tej podlagi gradite karkoli.

Obravnavajte dokumentacijo kot poskusno obdobje za celotno partnerstvo. Če je vzorčni odgovor težko najti že zdaj, bo pozneje težko najti tudi podporo.

Kaj lahko razvijete, ko je vir podatkov povezan?

Ko je vir podatkov povezan, lahko ena integracija poganja celo družino funkcij. Podatkovna plast je skupna, zato je vsaka nova vmesna ploskev predloga, ne pa nov projekt.

Pogoste rešitve vključujejo:

  • Žive tabele rezultatov, ki samodejno posodabljajo nize, igre in točke.
  • Strani z razporedom tekem, ki samodejno izpolnijo urnik dneva brez ročnega vnašanja.
  • Profil igralcev, obogaten s podatki o tekočih in zaključenih tekmah.
  • Vgrajeni widgeti, ki jih partnerske spletne strani lahko vstavijo na svoje strani.
  • Strani z zgodovino tekem, zgrajene na podlagi podatkov o posameznih točkah v plačljivih paketih.

Vsaka od teh rešitev deluje tudi po zagonu, brez posredovanja urednika. To je dodatna prednost: vsebina, ki ostane sveža še dolgo potem, ko ste jo zadnjič posodobili. Dajte prednost tisti rešitvi, ki jo vaša publika najpogosteje pregleduje, jo objavite, nato pa isti vir ponovno uporabite za naslednjo.

Zaključek

API za podatke o tenisu v živo spremeni statične strani v vsebino, ki se sama posodablja, kar je razlika med tabelo rezultatov, ki ji navijači zaupajo, in tisto, ki jo ignorirajo. Preden začnete z razvojem, preverite pokritost vseh turnirjev in vrst tekem, ki jih spremlja vaša publika, primerjajte pogostost posodabljanja s tem, kako »v živo« mora delovati vaša funkcija, in načrtujte poizvedbe glede na omejitve hitrosti. Preberite dokumentacijo in najprej preizkusite brezplačno različico. Če boste te preglede opravili pravilno, lahko ena sama integracija poganja tabele rezultatov, razporede tekem, profile in widgete, ki ostajajo natančni sami po sebi. Začnite z eno funkcijo, jo povežite s podatkovnim virom, nato pa razširite.

Felix Rose-Collins

Felix Rose-Collins

Ranktracker's CEO/CMO & Co-founder

Felix Rose-Collins is the Co-founder and CEO/CMO of Ranktracker. With over 15 years of SEO experience, he has single-handedly scaled the Ranktracker site to over 500,000 monthly visits, with 390,000 of these stemming from organic searches each month.

Začnite uporabljati Ranktracker... brezplačno!

Ugotovite, kaj preprečuje uvrstitev vašega spletnega mesta.

Ustvarite brezplačen račun

Ali se prijavite s svojimi poverilnicami

Different views of Ranktracker app