프로젝트/Riot LoL

Riot API 사용해보기-1

SigmoidFunction 2021. 7. 12. 15:10
728x90

다음 프로젝트는 실시간 데이터를 활용한 서비스를 제작하려 함

 

수많은 주제 중에서 일단 눈에 띈 것이 League of legend 관련한 것

 

롤은 Riot에서 정보제공도 해주기 때문에 아주 좋은 아이템인듯하다.

 

import requests
import json

api_key = "============================="
print('1:플레이어 검색')
selectnum = input('번호를 입력해주세요:')

if selectnum == '1':
    name = input('소환사의 닉네임을 입력해주세요: ')
    URL = 'https://kr.api.riotgames.com/lol/summoner/v4/summoners/by-name/'+name
    res = requests.get(URL, headers = {"X-Riot-Token": api_key })
    if res.status_code == 200:
        resobj = json.loads(res.text)
        URL = 'https://kr.api.riotgames.com/lol/league/v4/entries/by-summoner/'+resobj["id"]
        res = requests.get(URL, headers = {"X-Riot-Token": api_key})
        rankinfo = json.loads(res.text)
        print('소환사 이름 : '+name)
        for i in rankinfo:
            print(i)
            if i["queueType"] == 'RANKED_SOLO_5x5':
                print('솔로랭크:')
                print(f'티어: {i["tier"]} {i["rank"]}')
                print(f'승: {i["wins"]}판. 패: {i["losses"]}판')
            else:
                print("자유랭크:")
                print(f'티어: {i["tier"]} {i["rank"]}')
                print(f'승: {i["wins"]}판. 패: {i["losses"]}판')
    else:
        selectnum('소환사가 존재하지 않습니다.')

riot에서 제공하는 api키가 24시간밖에 지속이 안되서 지금 그걸 어떻게 해결해야할지 어디까지 정보를 쓸 수 있을 지에 대해서 알아보는 중

 

가장 기본이 되는 사용자의 전적과 티어확인

 

json, api 둘다 쓰는법이 익숙치 않아서 공부할 것이 참 많다.

 

 

실행결과

1:플레이어 검색
번호를 입력해주세요:1
소환사의 닉네임을 입력해주세요: 큐티뽕짝지녀니
소환사 이름 : 큐티뽕짝지녀니
{'leagueId': '==================', 'queueType': 'RANKED_SOLO_5x5', 'tier': 'GOLD', 'rank': 'I', 'summonerId': '----------------------', 'summonerName': '큐티뽕짝지녀니', 'leaguePoints': 0, 'wins': 18, 'losses': 10, 'veteran': False, 'inactive': False, 'freshBlood': False, 'hotStreak': False}

솔로랭크:
티어: GOLD I
승: 18판. 패: 10판

 

이렇게 나왔다.

 

어디까지가 개인정보인지 몰라서 걍 엥간히 복잡해보이는건 다지웠음

728x90