NBA 오픈API사용을 도와주는 nba_api 라이브러리 알아보기!
목차
빅데이터 열풍이 뜨겁다. 관련 사업도 많이 보이고, 여러가지 공모전도 있다. 하지만 빅데이터 하면 우리나라보다 미국을 떠올리게 된다. 구글, 아마존 등 데이터를 잘 활용하는 기업들도 많고, 관련 기술이나 문화 등 전반적으로 더 뛰어나기 때문이다. 우리나라보다 선진국이기 때문에 더 뛰어날 수 밖에 없지만, 문화나 기반을 보면 격차가 크다고 느낀다. 스포츠 관련 데이터도 역시 차이가 있다. 미국이 잘 정제된 데이터를 더 쉽게 접근할 수 있다고 느낀다.
오늘은 NBA 오픈 API를 쉽게 사용할 수 있도록 도와주는 nba_api 라이브러리에 대해서 알아보도록 하겠다.
NBA는 다 알다시피 미국 프로농구이다. 관련 데이터는 오픈 API로 공개돼 있어 사용이 가능하다. 하지만, 누군가 이마저도 불편하다고 생각했는지 라이브러리를 만들어 더 쉽게 사용할 수 있도록 했다.
nba_api 라이브러리를 설치하는 방법은 간단하다. pip를 이용해서 쉽게 설치할 수 있다.
> pip install nba_api
nba_api는 경기 결과 뿐만 아니라, 선수와 팀의 기록도 살펴 볼 수 있다. 예전에 한국을 방문한 '스테판 커리'를 한 번 찾아보았다. 우선 스테판 커리의 선수ID를 찾기 위해서 player를 import한다. 여기서 find_players_by_first_name 함수를 이용해서 선수ID를 찾을 수 있다.
"stephen"이 들어가 있는 선수명단들을 list형태로 보여준다. 출력결과의 중간에 보면 커리의 선수ID가 201939인 것을 알 수 있다.
> # encoding = utf-8
> from nba_api.stats.static import players
> df = players.find_players_by_first_name("stephen")
이제 선수ID를 이용해서 선수 정보를 살펴보도록 하자. 선수의 정보는 commonplayerinfo를 import해서 볼 수 있다.
> from nba_api.stats.endpoints import commonplayerinfo
> player_info = commonplayerinfo.CommonPlayerInfo(player_id=201939)
> test = player_info.get_data_frames()
> print(test)
선수의 정보를 list형태로 보여준다. 첫 번째에는 이름, 키, 몸무게, 출신학교 등 프로필에 대한 정보를, 두번째에는 경기결과 통계치를, 세번째에는 출전했던 season id를 보여준다.
경기 기록을 살펴보기 위해서는 playercareerstats를 이용하면 된다. 시즌별 경기기록들을 살펴볼 수 있다. game id를 통해서 game별 경기기록도 살펴볼 수 있다.
> from nba_api.stats.endpoints import playercareerstats
> career = playercareerstats.PlayerCareerStats(player_id='201939')
> temp = career.get_data_frames()
> print(temp[0])
보여주는 경기 기록들이 굉장히 많다. 필자는 NBA경기를 자주 보지 않아서 크게 와 닿지는 않지만, NBA를 좋아한다면 이런 여러가지 기록들을 직접 확인해보고 비교해 보는 재미가 있을 듯 하다.
( 스테판 커리 경기기록, 볼 수 있는 기록들이 많다 )
FG3_PCT는 3점슛 성공률이다. 40%를 넘어서는 엄청난 성공률을 확인해 볼 수 있었다. 특히 최근 3년간은 계속해서 성공률이 상승하고 있다.
이 외에도 시즌별, 게임별, 팀별로 볼 수 있는 기록들이 많다. NBA에 관심이 있다면, 데이터를 이용해 경기를 분석하고 모델링도 가능하지 않을까 한다. 제공하고 있는 라이브러리와 함수들이 궁금하다면, 파이썬 라이브러리 폴더에 nba_api 폴더로 가보자. endpoint와 static폴더안에 python파일들이 제공하고 있는 라이브러리들이라고 보면 되겠다.
( nba_api폴더의 endpoint에 파이썬 파일들 )
nba_api에 대해서 더 자세한 내용이 궁금하다면, 아래 주소를 참조해보자. github에 코드와 documentaion을 확인할 수 있다.
( 참조: nba_api github페이지 바로가기 )
오늘은 이렇게 NBA 오픈API 사용을 도와주는 nba_api라이브러리에 대해서 알아보았다. 오픈API를 통해서 정보가 잘 공개돼 있지만, 라이브러리를 통해서 더 쉽고 간편하게 사용이 가능했다. 우리나라에도 스포츠 데이터들이 잘 정제되고 공개돼서 많은 사람들이 활용할 수 있었으면 하고 바래본다.
오픈API를 사용하면 다양한 재미있는 일들을 해 볼 수 있다. 파이썬을 활용한 오픈API 사용이 궁금하다면 아래 글을 참조해보자.
(참조: 오픈API를 활용한 사례는 어떤 것들이 있을까?)
'Python > 오픈 API 활용기' 카테고리의 다른 글
파이썬 실시간 주가, 주식시세 데이터 수집하는 방법은? (6) | 2020.04.28 |
---|---|
파이썬 기업 재무제표 데이터, 쉽게 수집하는 방법은? (8) | 2020.04.17 |
로또 규칙, 로또 당첨그래프로 알아보는 방법은? (7) | 2020.04.03 |
파이썬 크롤링 예제, 메이저리그 경기 데이터 수집하기 (3) | 2019.08.16 |
마이데이터 사업은 무엇인가? (0) | 2019.01.05 |
하스스톤 API 파이썬으로 이용하기! (0) | 2018.12.29 |
파이썬으로 마인크래프트 하기?! (3) | 2018.12.12 |
부동산 토지 거래 실거래가 수집하기 (0) | 2018.11.05 |