Esiste un'API USCF?


10

Qualche tempo fa c'era un sito realizzato dal padre di NM Jonathan Hilton che faceva alcune analisi sulle storie di valutazione USCF del giocatore.

Ho pensato che fosse un sito abbastanza buono, ma è scomparso. Ci sono ancora alcuni strumenti come quello che fluttua intorno. Mi chiedevo se esistesse una sorta di API USCF o come quel tipo di dati potesse essere acquisito.

Risposte:


4

Non sono a conoscenza di un'API, ma il modo in cui l'hanno configurata è abbastanza facile raccogliere dati tramite una tecnica chiamata screen / web scraping .

Ad esempio, una ricerca sul tuo nome fornisce un collegamento a una pagina specifica con il tuo ID membro nell'URL. Quindi se hai un linguaggio di programmazione / libreria che è DOM-compatibile, puoi semplicemente capire dove saranno determinate cose, in base al design della pagina. Utilizzando i selettori jquery e un paio di attraversamenti, quella pagina può essere analizzata per ottenere la valutazione in quanto tale:

> $("td td td:contains(Regular Rating)").next().find("nobr").text();
"2072  
2012-03(Current floor is 1800)"

Bel voto, a proposito.

È un po 'doloroso e ancora più doloroso se decidono di cambiare il design delle pagine, ma alla fine sarai in grado di analizzare tutti i dati desiderati e quindi costruire un modo per raccogliere dati per ciascun membro e archiviarli nel tuo database per analisi. Non sarebbe così difficile da fare, basta scorrere gli ID dei membri e puoi ottenere i loro nomi, stati, valutazioni, ecc. - quanto più è disponibile sui loro schermi.

Spero che aiuti.


E ho appena visto il tuo sito Web - probabilmente sai tutto di raschiare. Ad ogni modo, sarebbe bello se offrissero un'API, ma non penso che sia il tipo di attività in cui si trovano.
Eve Freeman

In realtà non ancora. Qualcosa da imparare Ah bene, sembra un progetto per un weekend divertente!
Andrew Latham,

3

Non credo che l'USCF abbia un'API completa, ma ci sono alcuni URL speciali che è possibile utilizzare per lo screening / analisi dei dati semplificato:

In ognuna di quelle pagine "sottili", puoi passare un ID membro come parametro url (ad esempio thin3.php?11111111).

La risposta del server è molto leggera, senza markup estranei.

Queste pagine sono state progettate per l'uso del browser del telefono cellulare da parte di TD il giorno del torneo, se ricordo bene, ma sono anche utili per l'estrazione di dati.


Bella scoperta. Decisamente meglio dell'analisi del markup.
Eve Freeman,

Solo una nota, questo ti darà la valutazione e il nome attuali per ID membro, o ID membro per nome, ma non ti fornisce alcuna cronologia del torneo.
Eve Freeman,

@WesFreeman l'unico modo in cui sono stato in grado di trovare le statistiche sulla storia del torneo (e, beh, la storia) è l'analisi molto metodica delle pagine di msa. Potrei avere un vecchio codice php che estrae i dati da qualche parte, vedrò se riesco a scavare quando sono solo con il mio disco rigido esterno in seguito.
Andrew

Hanno davvero bisogno di una qualche forma di API. Ci sono così tanti fantastici mashup che si potrebbero fare ...
Mongo,

2

Esiste un'API per questo ora al seguente URL: https://uschessapi.azurewebsite.net/api/player/ {Id}

In questo caso {Id} = ID membro USCF

Di seguito è riportato un esempio di richiesta / risposta:

Richiesta - https://uschessapi.azurewebsite.net/api/player/13197795

Risposta (JSON)

{"memberId":"13197795","name":"JEREMY KRASIN","regularRating":"1828","quickRating":"1818","blitzRating":"1765","fideRating":"1749"}

In questo momento restituisce solo le valutazioni Regular, Quick, Blitz e Fide e il nome. Se qualcuno ha qualche domanda, sentiti libero di mandarmi un messaggio.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.