Hace un tiempo hubo un sitio creado por el padre de NM Jonathan Hilton que hizo algunos análisis sobre los historiales de clasificación de USCF del jugador.
Pensé que era un sitio bastante bueno, pero desapareció. Todavía hay algunas herramientas como esa flotando. Me preguntaba si había algún tipo de API de USCF, o cómo se podría obtener ese tipo de datos.
No conozco una API, pero de la forma en que la tienen configurada, es bastante fácil recopilar datos a través de una técnica llamada screen / web scraping .
Por ejemplo, una búsqueda en su nombre le da un enlace a una página específica con su identificación de miembro en la URL. Luego, si tiene un lenguaje / biblioteca de programación que sea compatible con DOM, simplemente puede averiguar dónde estarán ciertas cosas, en función del diseño de la página. Usando selectores jquery y un par de recorridos, esa página se puede analizar para obtener la calificación como tal:
> $("td td td:contains(Regular Rating)").next().find("nobr").text();
"2072
2012-03(Current floor is 1800)"
Buena calificación, por cierto.
Es un poco doloroso, y aún más doloroso si alguna vez deciden cambiar el diseño de las páginas, pero eventualmente podrá analizar todos los datos que desee y luego construir una forma de recopilar datos para cada miembro y almacenarlos. en su propia base de datos para análisis. No sería tan difícil de hacer, simplemente iterar a través de los ID de miembro, y puede obtener sus nombres, estados, calificaciones, etc., ya que hay mucho disponible en sus pantallas.
Y acabo de ver su sitio web: probablemente sepa todo sobre el raspado. De todos modos, sería genial si ofrecieran una API, pero no creo que ese sea el tipo de negocio en el que están.
Eve Freeman
En realidad aún no. Algo para aprender Ah bueno, ¡suena como un divertido proyecto de fin de semana!
Andrew Latham el
3
No creo que la USCF tenga una API completa, pero hay algunas URL especiales que puede usar para el análisis de datos / raspado de pantalla simplificado:
En cada una de esas páginas "delgadas", puede pasar un ID de miembro como un parámetro de URL (por ejemplo thin3.php?11111111).
La respuesta del servidor es muy, muy ligera, sin marcas extrañas.
Estas páginas fueron diseñadas para el uso del navegador del teléfono celular por los TD's el día del torneo si no recuerdo mal, pero también son útiles para extraer datos.
Buen hallazgo Definitivamente mejor que analizar el marcado.
Eve Freeman el
Solo una nota, esto te dará la calificación actual y el nombre por ID de miembro, o ID de miembro por nombre, pero no te da ninguna estadística del historial del torneo.
Eve Freeman el
@WesFreeman, la única forma en que he podido encontrar las estadísticas del historial del torneo (y, bueno, el historial) es mediante un análisis muy metódico de las páginas de MSA. Es posible que tenga algún código php antiguo que extraiga datos en alguna parte, veré si puedo desenterrar eso cuando esté solo con mi disco duro externo más tarde.
Andrew
Realmente necesitan alguna forma de API. Hay tantos mashups geniales que se podrían hacer ...
En este momento solo devuelve las calificaciones Regular, Quick, Blitz y Fide, así como el nombre. Si alguien tiene alguna pregunta, no dude en enviarme un mensaje.
No creo que la USCF tenga una API completa, pero hay algunas URL especiales que puede usar para el análisis de datos / raspado de pantalla simplificado:
En cada una de esas páginas "delgadas", puede pasar un ID de miembro como un parámetro de URL (por ejemplo
thin3.php?11111111
).La respuesta del servidor es muy, muy ligera, sin marcas extrañas.
Estas páginas fueron diseñadas para el uso del navegador del teléfono celular por los TD's el día del torneo si no recuerdo mal, pero también son útiles para extraer datos.
fuente
Hay una API para esto ahora en la siguiente url: https://uschessapi.azurewebsites.net/api/player/ {Id}
En este caso, {Id} = ID de miembro de USCF
El siguiente es un ejemplo de solicitud / respuesta:
Solicitud: https://uschessapi.azurewebsites.net/api/player/13197795
Respuesta (JSON)
En este momento solo devuelve las calificaciones Regular, Quick, Blitz y Fide, así como el nombre. Si alguien tiene alguna pregunta, no dude en enviarme un mensaje.
fuente