1. 목표 : 캐릭터명을 입력받아 같은 계정 내 캐릭터 출력.
    1. 서버명과 캐릭터 수를 출력함.
    2. 하위에 서버 내 캐릭터를 출력함.
    3. 캐릭터는 캐릭터 프로필 이미지, 캐릭터명, 캐릭터 레벨, 클래스, 아이템 레벨 순으로 출력
  2. 캐릭터 명을 받아 동일한 계정 내 캐릭터를 전부 받아오기
    사용 API : https://developer-lostark.game.onstove.com/characters/{characterName}/siblings?characterName={{characterName}}
    1. 캐릭터 전체 정보 가져오기
      import requests
      from lostark_api_token import *
      
      characterName = input("캐릭터 이름을 입력해 주세요 : ")
      
      link = f"/characters/{characterName}/siblings"
      headers = {
          'accept': 'application/json',
          'authorization': authorization_key
      }
      
      response = requests.get(lostark_url + link, headers=headers)
      #오류 발생 시 예외를 던짐
      response.raise_for_status()
      characters = response.json()


    2. 캐릭터에 포함된 서버 정보 가져오기
      # 캐릭터 내의 서버이름을 목록으로 받아온 뒤, list 타입으로 변경하여 중복 제거
      ServerName_list = [character['ServerName'] for character in characters]
      ServerName_list = list(set(ServerName_list))


    3. 서버에 포함된 캐릭터 목록 전부 가져오기
      # 서버 별 캐릭터 목록으로 정리하기
      # {서버명 : 캐릭터 목록 list}
      char_info_list = {}
      for servername in ServerName_list:
          char_info_list[servername] = \
              [char for char in characters if char['ServerName'] == servername]


  3. 캐릭터 명을 받아 해당하는 캐릭터의 이미지 가져오기
    사용 API : https://developer-lostark.game.onstove.com/armories/characters/{{characterName}}
    # 캐릭터 이미지 가져오기 (API GET)
    link = f"/armories/characters/{character['CharacterName']}/profiles"
    headers = {
        'accept': 'application/json',
        'authorization': authorization_key
    }
    response = requests.get(lostark_url + link, headers=headers)
    
    # 캐릭터 이미지 중 'CharacterImage'에 해댕하는 내용만 가져옴
    profile_image = response.json()['CharacterImage']


  4. 출력하기
    for key, value in char_info_list.items():
        print("==================================================")
        print("서버명 : {!r:10s} 캐릭터 수 : {}".format(key.replace("'", ""), len(value)))
        print("==================================================")
        for character in value:
    
            # 캐릭터 이미지 가져오기
            ### 3번 내용 입력하기 ###
    
            # 캐릭터 정보 출력
            print("캐릭터 프로필 : {}".format(profile_image))
            print("캐릭터명      : {} ".format(character['CharacterName']))
            print("캐릭터 레벨   : {} ".format(character['CharacterLevel']))
            print("클래스        : {} ".format(character['CharacterClassName']))
            print("아이템 레벨   : {} ".format(character['ItemMaxLevel']))
            print()
  5. 결과 확인

https://github.com/rusharp1/api_study/blob/master/lostark_api/lostark_character_get.py