답변:
API에 대해서는 잘 모르지만 설정 방법은 screen / web scraping 이라는 기술을 통해 데이터를 수집하는 것이 매우 쉽습니다 .
예를 들어, 이름을 검색하면 URL에 회원 ID가있는 특정 페이지에 대한 링크가 제공됩니다. 그런 다음 DOM을 인식하는 프로그래밍 언어 / 라이브러리가 있으면 페이지 디자인을 기반으로 특정 사항이있는 위치를 간단히 파악할 수 있습니다. jquery 선택기와 몇 개의 순회를 사용하여 해당 페이지를 구문 분석하여 다음과 같은 등급을 얻을 수 있습니다.
> $("td td td:contains(Regular Rating)").next().find("nobr").text();
"2072
2012-03(Current floor is 1800)"
그건 그렇고 좋은 평가.
페이지 디자인을 변경하기로 결정하면 조금 고통스럽고 더 고통 스럽지만 결국 원하는 모든 데이터를 파싱 한 다음 각 구성원에 대한 데이터를 수집하고 저장하는 방법을 만들 수 있습니다 분석을 위해 자신의 데이터베이스에 저장하십시오. 그렇게하기가 어렵지 않고 회원 ID를 반복하기 만하면 이름, 상태, 등급 등을 얻을 수 있습니다.
희망이 도움이됩니다.
USCF에 전체 API가 있다고 생각하지 않지만 간단한 화면 스크래핑 / 데이터 구문 분석에 사용할 수있는 몇 가지 특수 URL이 있습니다.
각 "씬"페이지에서 멤버 ID를 url 매개 변수 (예 :)로 전달할 수 있습니다 thin3.php?11111111
.
서버 응답은 매우 가벼우 며 마크 업이 없습니다.
이 페이지는 내가 기억하는 경우 토너먼트 당일 TD가 휴대 전화 브라우저를 사용하도록 설계되었지만 데이터 추출에도 유용합니다.
다음 URL 에이 API가 있습니다 : https://uschessapi.azurewebsites.net/api/player/ {Id}
이 경우 {Id} = USCF 회원 ID
다음은 요청 / 응답 예입니다.
요청-https: //uschessapi.azurewebsites.net/api/player/13197795
응답 (JSON)
{"memberId":"13197795","name":"JEREMY KRASIN","regularRating":"1828","quickRating":"1818","blitzRating":"1765","fideRating":"1749"}
지금은 이름뿐만 아니라 일반, 빠른, 블리츠 및 Fide 등급을 반환합니다. 질문이 있으시면 언제든지 저에게 메시지를 보내주십시오.