본문 바로가기
My Project/시네데이트 일지

CineDate 프로젝트 - 1 (오픈 API 파싱하기)

by 앵즌 2024. 8. 27.

오늘은 스프링부트에서 오픈 API 파싱하는 방법에대해 포스팅을 할 것 입니다.

 

우선 해야 할 것! 

 

영화진흥위원회에서 키 발급 받기!!

 

필요한 자료들을 뽑아내기 위해서 영화진흥위원회에서 키를 발급 받아야한다

 

https://www.kobis.or.kr/kobisopenapi/homepg/apikey/ckUser/findApikeyList.do

 

영화진흥위원회 오픈API

영화관입장권통합전산망 오픈API 서비스에 오신것을 환영합니다. 로그인하시고 영화관입장권통합전산망의 다양한 오픈API 서비스를 이용해 보세요.

www.kobis.or.kr

 

여기에 들어가서 회원가입을 한 후

 

 

 

키 발급 받기를 한다!

 

 

관리명은 아무거나 지어도 상관없고 URL도 마음대로 설정하면 된다!

 

발급키랑 서비스 사용 URL은 메모장에 적어두도록 하자.

 

 

 

 

저는 미리 사용 할 URL+Key들을 변수로 지정해 두었습니다.

 

RestTemplate로 응답요청을 할 것 입니다. 

우선 주말박스오피스를 가져올꺼고 

 

다른 자료를 뽑고싶으면 홈페이지를 참고해서 자기가 원하는 데이터를 뽑아내면 됩니다.

 

RestTemplate는 HTTP 통신을 위한 도구로 RESTful API 웹 서비스와의 상호작용을 쉽게 외부 도메인에서 데이터를 가져오거나 전송할 때 사용되는 스프링 프레임워크의 클래스를 의미합니다.

 

- 다양한 HTTP 메서드(GET, POST, PUT, DELETE 등)를 사용하며 원격 서버와 ‘동기식 방식’으로 JSON, XML 등의 다양한 데이터 형식으로 통신합니다.
- 동기식 방식으로 요청을 보내고 응답을 받을 때까지 블로킹되며, 요청과 응답이 완료되기 전까지 다음 코드로 진행되지 않습니다. 원격 서버와 통신할 때는 응답을 기다리는 동안 대기해야 합니다.

 

 

responseEntity를 이용할 것 입니다.

 

WeeklyBoxOffice.class로 변환해서 담아 줄 것입니다.

 

 

WeeklyBoxOffice

 

responseBody를 설정해두고 값을 눈에 보이게 띄워봅시다!

 

그러면 현재 상영중인 영화의 주말 박스오피스가 나오게 됩니다.

 

 

값을 DTO에 잘 담겼는지 콘솔창에 출력이 되게 찍어봅니다

잘 담긴걸 확인할 수 있습니다

 

 

참고로 이 URI의 weeklyBoxDate는 동적으로 받기위해 현재 날짜를 받아오는 녀석 입니다.

 

 

이 데이터를 가지고 이제 갖고 놀면 됩니다!

 

영화진흥위원회에서는 제가 찾는 데이터인 이미지 주소가 빠져있기 때문에 다음 포스팅은 TMDB를 파싱해 보겠습니다.