spotify api 추가 설명

spotify 라이브러리 동작 방식 (로직 설명을 한글로)
spotify api 선택 이유 중 데이터 접근성이 좋다 부분을 조금 더 세세하게 설명
이번 프로젝트에서 플레이리스트 관련 spotify api를 가져오는 것은
라이브러리를 사용한게 아닌 http 요청을 직접 보내서 사용하는 방식이다. (동작방식은 여기)
request를 사용하여 spotify api에 http 요청을 직접 보냈다.
request를 사용하여 필요한 http 요청을 직접 작성하고, spotify의 엔드포인트에 직접 요청을 보내고 응답을 처리함
토큰 발급
- requests.post로 spotify api에 http 요청을 직접 보낸 후 json 형식으로 응답을 받아와 처리
response = requests.post(TOKEN_URL, headers=headers, data=data)
response_data = response.json()
플레이리스트 데이터 가져오기
- requests.get으로 spotify의 플레이리스트 api에 http 요청을 직접 보낸 후 json 형식으로 받아와 처리
spotify_api = requests.get(
"https://api.spotify.com/v1/browse/featured-playlists?limit=40", headers=headers
)
spotify_data = spotify_api.json()
왜 spotify를 선택했는가?
방대한 음악 데이터베이스 : spotify는 전 세계적으로 가장 큰 음악 스트리밍 서비스 중 하나로, 다양한 장르와 아티스트의 음악을 제공한다.
사용하기 쉬운 문서 및 인터페이스 : spotify api는 잘 문서화되어 있어 다양한 api 엔드포인트와 사용법을 자세히 안내하고 있어 개발자들이 쉽게 사용할 수 있다.
많은 사용자 기반 : spotify는 전 세계적으로 많은 사용자를 보유하고 있어, 사용자들이 자신의 계정과 플레이리스트를 손쉽게 통합할 수 있다.
빠른 응답 시간 : 빠르고 안정적인 응답 시간을 제공하여, 애플리케이션이 신속하게 사용자 요청에 응답할 수 있다.
데이터 접근성이 좋다?
다양한 방식으로 음악 데이터에 접근할 수 있도록 광범위한 엔드포인트 제공 → 데이터를 손쉽게 활용 가능하다.
다양한 엔드포인트 제공
- spotify api는 앨범, 아티스트, 트랙, 플레이리스트 등 다양한 엔드포인트를 제공하여 필요한 특정 데이터를 쉽게 가져올 수 있다. 특정 아티스트의 인기 트랙이나 사용자가 만든 플리를 가져올 수 있음
사용자 데이터 접근
- 사용자의 플리, 최근에 들은 트랙, 팔로우 아티스트 등 다양한 사용자 데이터를 가져올 수 있다.
검색 기능
- 검색으로 사용자가 원하는 음악, 앨범 등을 쉽게 찾을 수 있으며, 필터와 파라미터 지원

실제 코드 로직에서는
1.search = request.query_params.get("query", None)으로 query 파라미터로 검색어를 가져온다.
2.검색어와 검색 유형을 파라미터로 설정
headers = {"Authorization": f"Bearer {access_token}"}
params = {"q": search, "type": "playlist"}
3.spotify api 호출 → requests.get으로 검색 엔드포인트에 요청을 보내고, params에 검색어를 전달하여 요청
spotify_api = requests.get(
"https://api.spotify.com/v1/search?limit=40", headers=headers, params=params )
검색어가 제니일 경우
query=제니 로 요청을 보내면 search 변수는 제니가 된다.
params는 {"q": "제니", "type": "playlist"}가 되어 Spotify API에 전달
requests.get으로 api 요청을 보내고, 응답을 json 형식으로 받아옴




