본문 바로가기
데이터분석/Pandas

[Python] Pandas 15 _ curl

by nemonemonemo 2025. 8. 25.

curl 방식으로 API를 지원하는 경우들이 있음

→ 게임사쪽 api

→ curl 방식으로 제공을 하는데,파이썬의 코드로 요청
https://curlconverter.com/

curl -X 'GET' \\
  '<https://developer-lostark.game.onstove.com/characters/test/siblings>' \\
  -H 'accept: application/json' \\
  -H 'authorization: bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIng1dCI6IktYMk40TkRDSTJ5NTA5NWpjTWk5TllqY2lyZyIsImtpZCI6IktYMk40TkRDSTJ5NTA5NWpjTWk5TllqY2lyZyJ9.eyJpc3MiOiJodHRwczovL2x1ZHkuZ2FtZS5vbnN0b3ZlLmNvbSIsImF1ZCI6Imh0dHBzOi8vbHVkeS5nYW1lLm9uc3RvdmUuY29tL3Jlc291cmNlcyIsImNsaWVudF9pZCI6IjEwMDAwMDAwMDAxMzE4MDgifQ.RgtjaqfSMT3yCT4YXGkTgupBrTvuihl9JF-Nt9yi1hjcqNhRfy0pJLFOtzIJ6MB_cGdlCxUzx26zGVpgrBhTugUFQxz3gPPTLppVXRh9L_tFNYQ42inVXx4y7s9COI_0ENbYxwmy-1GcLgd2Xp7ZuEEa0e-hdVViClkWNSHJqw90Nni2Vxby858-Sjd4Mm1OH4Tn4kGlzbGjNDVJEeY0nD6abX82ulcNFkCdADuvIDwvpBa5hCfwPFekdrtJBEtbcqHF9VfD4nwdSGLdlmlsVCdpN4xbGfOh24XPSgU3nN6MZsQavcEG8CMfx004-vUDWXmuvlHpLtEA-Jq6jbrTaw'
  
  
import requests

headers = {
    'accept': 'application/json',
    'authorization': 'bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIng1dCI6IktYMk40TkRDSTJ5NTA5NWpjTWk5TllqY2lyZyIsImtpZCI6IktYMk40TkRDSTJ5NTA5NWpjTWk5TllqY2lyZyJ9.eyJpc3MiOiJodHRwczovL2x1ZHkuZ2FtZS5vbnN0b3ZlLmNvbSIsImF1ZCI6Imh0dHBzOi8vbHVkeS5nYW1lLm9uc3RvdmUuY29tL3Jlc291cmNlcyIsImNsaWVudF9pZCI6IjEwMDAwMDAwMDAxMzE4MDgifQ.RgtjaqfSMT3yCT4YXGkTgupBrTvuihl9JF-Nt9yi1hjcqNhRfy0pJLFOtzIJ6MB_cGdlCxUzx26zGVpgrBhTugUFQxz3gPPTLppVXRh9L_tFNYQ42inVXx4y7s9COI_0ENbYxwmy-1GcLgd2Xp7ZuEEa0e-hdVViClkWNSHJqw90Nni2Vxby858-Sjd4Mm1OH4Tn4kGlzbGjNDVJEeY0nD6abX82ulcNFkCdADuvIDwvpBa5hCfwPFekdrtJBEtbcqHF9VfD4nwdSGLdlmlsVCdpN4xbGfOh24XPSgU3nN6MZsQavcEG8CMfx004-vUDWXmuvlHpLtEA-Jq6jbrTaw',
}

response = requests.get('<https://developer-lostark.game.onstove.com/characters/test/siblings>', headers=headers)

response
'''

'''

response.json()
# --> api에 통해서 받은 정보들을 앞에서 한 대로 처리하면 됨!!!!
'''
[{'ServerName': '카마인',
  'CharacterName': '4p',
  'CharacterLevel': 70,
  'CharacterClassName': '발키리',
  'ItemAvgLevel': '1,642.50'},
 {'ServerName': '카마인',
  'CharacterName': '2p',
  'CharacterLevel': 70,
  'CharacterClassName': '환수사',
  'ItemAvgLevel': '1,640.00'},
 {'ServerName': '카마인',
  'CharacterName': '78',
  'CharacterLevel': 69,
  'CharacterClassName': '브레이커',
  'ItemAvgLevel': '1,600.00'},
 {'ServerName': '카마인',
  'CharacterName': 'QQ',
  'CharacterLevel': 70,
  'CharacterClassName': '슬레이어',
  'ItemAvgLevel': '1,640.00'},
 {'ServerName': '카마인',
  'CharacterName': 'ep',
  'CharacterLevel': 70,
  'CharacterClassName': '기상술사',
  'ItemAvgLevel': '1,640.00'},
 {'ServerName': '카마인',
  'CharacterName': 'li',
  'CharacterLevel': 64,
  'CharacterClassName': '도화가',
  'ItemAvgLevel': '1,541.67'},
 {'ServerName': '카마인',
  'CharacterName': 'F4',
  'CharacterLevel': 67,
  'CharacterClassName': '버서커',
  'ItemAvgLevel': '1,493.33'},
 {'ServerName': '카마인',
  'CharacterName': 'DDD',
  'CharacterLevel': 70,
  'CharacterClassName': '소서리스',
  'ItemAvgLevel': '1,640.00'},
 {'ServerName': '카마인',
  'CharacterName': '제어형',
  'CharacterLevel': 60,
  'CharacterClassName': '호크아이',
  'ItemAvgLevel': '1,447.50'},
 {'ServerName': '카마인',
  'CharacterName': '낡침',
  'CharacterLevel': 61,
  'CharacterClassName': '스트라이커',
  'ItemAvgLevel': '1,555.00'},
 {'ServerName': '카마인',
  'CharacterName': '고특채',
  'CharacterLevel': 62,
  'CharacterClassName': '건슬링어',
  'ItemAvgLevel': '1,447.50'},
 {'ServerName': '카마인',
  'CharacterName': '프프팩',
  'CharacterLevel': 60,
  'CharacterClassName': '리퍼',
  'ItemAvgLevel': '1,445.00'},
 {'ServerName': '카마인',
  'CharacterName': '245',
  'CharacterLevel': 60,
  'CharacterClassName': '스카우터',
  'ItemAvgLevel': '1,445.00'},
 {'ServerName': '카마인',
  'CharacterName': '223',
  'CharacterLevel': 70,
  'CharacterClassName': '데빌헌터',
  'ItemAvgLevel': '1,640.00'},
 {'ServerName': '카마인',
  'CharacterName': '낡은침대',
  'CharacterLevel': 70,
  'CharacterClassName': '블레이드',
  'ItemAvgLevel': '1,640.00'},
 {'ServerName': '카마인',
  'CharacterName': '불법스캔',
  'CharacterLevel': 60,
  'CharacterClassName': '홀리나이트',
  'ItemAvgLevel': '1,445.00'},
 {'ServerName': '카마인',
  'CharacterName': '입맛이맞았다',
  'CharacterLevel': 61,
  'CharacterClassName': '데모닉',
  'ItemAvgLevel': '1,550.00'},
 {'ServerName': '카마인',
  'CharacterName': '플람핑허',
  'CharacterLevel': 60,
  'CharacterClassName': '창술사',
  'ItemAvgLevel': '1,445.00'},
 {'ServerName': '카마인',
  'CharacterName': '이소퓨어',
  'CharacterLevel': 60,
  'CharacterClassName': '인파이터',
  'ItemAvgLevel': '1,445.00'},
 {'ServerName': '카마인',
  'CharacterName': 'Test',
  'CharacterLevel': 70,
  'CharacterClassName': '아르카나',
  'ItemAvgLevel': '1,660.67'},
 {'ServerName': '카마인',
  'CharacterName': 'BCAA스택',
  'CharacterLevel': 70,
  'CharacterClassName': '서머너',
  'ItemAvgLevel': '1,600.00'},
 {'ServerName': '카제로스',
  'CharacterName': 'cart',
  'CharacterLevel': 1,
  'CharacterClassName': '전사(남)',
  'ItemAvgLevel': '0.00'},
 {'ServerName': '아만',
  'CharacterName': 'ucc',
  'CharacterLevel': 1,
  'CharacterClassName': '전사(남)',
  'ItemAvgLevel': '0.00'},
 {'ServerName': '루페온',
  'CharacterName': '노익스',
  'CharacterLevel': 59,
  'CharacterClassName': '소울이터',
  'ItemAvgLevel': '1,540.00'}]
'''

지금까지 내용

  • 기본적으로 이런식으로 동작하는구나
  • 본인이 직접 플젝
  • 기능 + gpt 이용하면서 but 그 코드에 대한 이해는 있어야함

'데이터분석 > Pandas' 카테고리의 다른 글

[Python] Pandas _ EDA _ 02 titanic  (2) 2025.08.27
[Python] Pandas _ EDA _ 01 telecom  (2) 2025.08.26
[Python] Pandas 14 _ groupby  (3) 2025.08.25
[Python] Pandas 13 _ pivot  (1) 2025.08.25
[Python] Pandas 12 _ na  (1) 2025.08.25