군붕이의 메모장

전적 검색을 위한 Riot API 발급 및 사용법 본문

프로젝트/롤 전적검색 사이트

전적 검색을 위한 Riot API 발급 및 사용법

초보군붕이 2021. 2. 21. 14:48
반응형

● Riot API 발급받기

우선 riot 개발자 페이지에 접속해야한다.

 

URL : developer.riotgames.com/

 

Riot Developer Portal

About the Riot Games API With this site we hope to provide the League of Legends developer community with access to game data in a secure and reliable way. This is just part of our ongoing effort to respond to players' and developers' requests for data and

developer.riotgames.com

접속후 상단 Login 을 눌러 본인의 리그오브레전드 계정으로 로그인하면 아래와 같은 화면이 보이게된다.

로그인 후 developer.riotgame.com 화면

위 사진에는 키가 발급되어있으나 신규 가입자는 "REGISTER PRODUCT" 버튼을 눌러서 신규 API KEY를 발급받아야 한다.

 

 

REGISTER PRODUCT 화면

API 발급시 두가지를 선택할 수 있는데 PRODUCTION 과 PERSONAL 이다.

 

  • PRODUCTION : 실제 상품을 개발하며 큰 커뮤니티는
  • PERSONAL : 단순한 개발공부, 소규모 커뮤니티(비공개 등)

나느 실제 서비스용이 아닌 단순 공부용(소규포 프로젝트)으로 사용할 예정으로 PERSONAL API KEY를 선택했다.

 

API KEY 가 발급된 상태의 화면

DEVELOMENT API KEY 의 화면을 보면 중간의 긴 KEY 가 발급된것을 확인할 수 있다.

 

하지만 PERSONAL API KEY 만 그런건 모르겠으나 금방 Expires 가 되어버려 Regenerate 를 주기적으로 해줘야한다.

 

● API 호출하기

API KEY 가 발급되었으면 이제 API를 호출할 차례다.

 

우선 DOCS를 확인해보면 호출하는 URL은 아래와 같았다.

 

더보기

※ URL : https://Platform_Routing_Value/API?api_key="API KEY"

 

- Platform Routing Value

우선 나는 한국서버를 대상으로 제작할 예정으로 한국에 해당하는 링크를 넣었다.

 

공식 DOCS 제공하는 정보

- API

APIS 에 가면 리그오브레전드, 발로란트, 리그오브룬테라 등 다양한 API를 제공하는것을 확인할 수 있다.

 

그중에서 소환사 닉네임을 기반으로 소환사 정보를 가져오는 API를 호출해보았다.

 

/lol/summoner/v4/summoners/by-name/{summonerName} 관한 설명

- API KEY

API KEY 의 경우 부가설명없이 그냥 발급받은 API KEY 복붙하면 된다.

 

● API 호출 결과 - summonorInfo

# API 호출을 위해 requests 모듈을 사용
import requests

# API 에서 공통적으로 사용하는 텍스트를 선언
apiDefault = {
    'region': 'https://kr.api.riotgames.com',  # 한국서버를 대상으로 호출
    'key': 'RGAPI-XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX',  # API KEY ( 보안상의문제로 모자이크 )
    'summonerName': 'Hide on Bush',  # SKT T1 Faker 선수의 닉네임
}

# api 호출시 사용되는 url
url = F"{apiDefault['region']}/lol/summoner/v4/summoners/by-name/{apiDefault['summonerName']}?api_key={apiDefault['key']}"

# get method 를 통해 api 호출
req = requests.get(url)

print(req.text)

우선 평소 좋아하던 선수인 SKT T1 Faker 선수의 닉네임(Hide on Bush)으로 테스트를 해봤다.

 

출력결과

더보기

--- 출력결과 ---

"id":"소환사의 고유 id",

"accountId":"소환사의 고유 accountId",

"puuid":"소환사의 고유 puuid",

"name":"Hide on bush",

"profileIconId":6,

"revisionDate":1613453277000,"

"summonerLevel":417

다양한 정보가 출력됬으며 그중에서도 눈에 띄는건 name(소환사이름), profileIconId(프로필 아이콘의 ID), summonorLevel(소환사 레벨) 이다.

 

revisionDate 는 1970년 부터 시작하여 소환사가 마지막으로 접속한 정보를 밀리세컨드로 나타내준다.

 

 

위와 같이 다양한 정보를 제공해줘서 사이트를 제작하기 정말 편할것같다. 하지만 제공하는 API가 많다보니 각 어떤정보를 제공하는지 정리해야될것같다..

 

반응형