Introduce
API 설명

영화진흥위원회 API
영화진흥위원회 API 서비스들 중 영화목록 API, 일별 박스오피스 API를 사용합니다. REST 방식으로 호출했으며, 응답형식은 XML, JSON 둘 다 지원하지만 JSON 형식을 사용합니다.
- 영화목록 API
영화목록 조회 API 서비스는 통합 전산망에서 사용되는 영화목록을 영화명, 감독명 등의 조건을 통해 조회할 수 있습니다. 이 중 영화명으로 요청하여 조회할 수 있게 하였으며, 결과 ROW개수는 사용자가 원하는 만큼을 필수가 아닌 요청변수로 주어 응답하도록 하였습니다.
- 일별 박스오피스 API
일별 박스오피스 API 서비스는 특정 일자 상영작들의 박스오피스 정보를 사용자가 원하는 조건을 통해 조회합니다. 상영지역별로 조회하기 위해 지도 API를 통해 받아온 사용자의 위치를 통해 지역별 박스오피스 정보를 응답하도록 하였습니다.

Geolocation API
REST 방식으로 호출했으며, JSON 객체 또는 JSONP callback 함수가 반환될 수 있지만 JSON 형식을 사용합니다.
- 사용자의 현재 위치 파악
- 사용자 IP를 기반으로 현재 위치를 위도, 경도를 매개변수로 지도 API에 전달

KakaoMap API
지도 SDK는 카카오맵의 기능을 웹과 앱 플랫폼에 구현할 수 있도록 다양한 메서드와 라이브러리를 통해 제공합니다. 로컬 API는 REST API 방식으로 카카오맵의 콘텐츠 및 데이터를 제공합니다.
- 키워드로 장소 검색 기능을 활용
- 현재 위치를 기준으로 반경 20km 내 영화관 위치 정보 반환
- 사용자 위치 반경 20km내 영화관을 가까운 순서로 출력
결과 ROW개수는 사용자가 원하는 만큼을 필수가 아닌 요청변수로 주어 응답하도록 하였습니다.
Introduce
기대효과
기대효과1
주기적으로 업데이트되는 최신정보를 기반으로 찾고자 하는 키워드를 통해 관련 영화들의 정보와 목록을 한 눈에 확인할 수 있다.
기대효과2
사용자의 현재 위치를 통해 주변 영화관의 위치를 쉽게 알 수 있으며, 이에 더불어 해당 지역의 영화 순위도 한 번에 알 수 있다.
Introduce
개발환경
REST API
REST API는 HTTP 요청을 보낼 수 있는 환경이라면 어디서든 이용 가능합니다. 클라이언트에서 서버로, 또는 서버에서 서버로 요청을 보낼 수 있습니다. 예를 들면 다음과 같은 환경에서 REST API를 사용할 수 있습니다.
모바일/PC 웹 환경
IOS, Android등 모바일 환경
Java, Ruby, Python등 다양한 환경의 웹 서버
Functions
기능
How To Use
샘플 코드
요청 URL
요청 방식
API | 메서드 | 요청 URL | 출력 포맷 |
---|---|---|---|
영화 검색 | GET | http://15.165.160.58:5000/moviesearch/movieinfo | JSON |
현재 위치 주변 영화관 및 박스오피스 검색 | GET | http://15.165.160.58:5000/moviesearch/cineinfo | JSON |
API 호출 예제
영화 검색
import os import sys import urllib.request encText = urllib.parse.quote("검색할 영화제목") url = "http://15.165.160.58:5000/moviesearch/movieinfo?key=[발급받은 키]&listNum=2&movieNm=" + encText request = urllib.request.Request(url) response = urllib.request.urlopen(request) rescode = response.getcode() if(rescode==200): response_body = response.read() print(response_body.decode('utf-8')) else: print("Error Code:" + rescode) |
---|
현재 위치 주변 영화관 및 박스오피스 검색
import os import sys import urllib.request encText = urllib.parse.quote("사용자 ip") url = "http://15.165.160.58:5000/moviesearch/cineinfo?key=[발급받은 키]&listNum=2&ip=" + encText request = urllib.request.Request(url) response = urllib.request.urlopen(request) rescode = response.getcode() if(rescode==200): response_body = response.read() print(response_body.decode('utf-8')) else: print("Error Code:" + rescode) |
---|
응답 예
영화 검색

현재 위치 주변 영화관 및 박스오피스 검색

오류코드
영화 검색 / 현재 위치 주변 영화관 및 박스오피스 검색
상태 코드 | 상태 | 설명 |
---|---|---|
200 OK |
성공 | 서버가 클라이언트의 요청을 성공적으로 수행 응답 바디의 경우 각 API별로 응답 바디의 형식이 다를 수 있으므로, 자세한 내용은 각 API별 상세 설명을 참고하기 바랍니다. |
400 Bad Request |
실패 | 일반적인 오류 주로 API에 필요한 필수 파라미터와 관련하여 서버가 클라이언트 오류를 감지해 요청을 처리하지 못한 상태입니다. |
401 Unauthorized |
실패 | 인증 오류 (주로 토큰 관련) 해당 리소스에 유효한 인증 자격 증명이 없어 요청에 실패한 상태입니다. |
429 Too Many Request |
실패 | 쿼터 초과 정해진 사용량이나 초당 요청 한도를 초과한 경우입니다. |
500 Internal Server Error |
실패 | 시스템 오류 서버 에러를 총칭하는 에러 코드로, 요청을 처리하는 과정에서 서버가 예상하지 못한 상황에 놓인 상태입니다. |
502 Bad Gateway |
실패 | 시스템 오류 서로 다른 프로토콜을 연결해주는 게이트웨이가 잘못된 프로토콜을 연결하거나 연결된 프로토콜에 문제가 있어 통신이 제대로 되지 않은 상태입니다. |
503 Service Unavailable |
실패 | 서비스 점검 중 서버가 요청을 처리할 준비가 되지 않은 상태입니다. |
How To Use
요청 및 응답 방식
영화 검색
요청 방식
Name | Required | Type | Description |
---|---|---|---|
key | Y | str | 발급받은 인증 키 값을 입력합니다. |
movieNm | Y | str | 조회하고자 하는 영화 제목을 입력합니다. |
listNum | N | str | 출력되는 영화제목 row 개수를 지정합니다. 영화 검색 결과가 10개 이하일 때는 결과 개수만큼 출력됩니다. (default : "10", 최대 : "10") |
응답 방식
Name | Type | Description |
---|---|---|
companyCd | str | 제작사 코드를 출력합니다. |
companyNm | str | 제작사명을 출력합니다. |
peopleNm | str | 영화감독명을 출력합니다. |
genreAlt | str | 영화장르를 출력합니다. |
movieNm | str | 영화명을 출력합니다. |
nationAlt | str | 제작국가를 출력합니다. |
openDt | str | 개봉년도를 출력합니다. |
현재 위치 주변 영화관 및 박스오피스 검색
요청 방식
Name | Required | Type | Description |
---|---|---|---|
key | Y | str | 발급받은 인증 키 값을 입력합니다. |
ip | Y | str | 위치정보를 위한 사용자 ip를 입력합니다. |
listNum | N | int | 출력되는 영화제목 row 개수를 지정합니다.(default : 15, 최대 : 15) |
응답 방식
Name | Type | Description |
---|---|---|
audiAcc | str | 누적관객수를 출력합니다. |
movieNm | str | 영화명을 출력합니다. |
openDt | str | 영화 개봉일을 출력합니다. |
rank | str | 전날의 박스오피스 순위를 출력합니다. |
adress_name | str | 전체 지번 주소를 출력합니다. |
distsance | str | 중심 좌표까지의 거리를 출력합니다. 단, x, y 파라미터를 준 경우에만 존재합니다. (단위 : meter) |
phone | str | 영화관 전화번호를 출력합니다. |
place_name | str | 영화관명을 출력합니다. |
place_url | str | 영화관 상세페이지 url을 출력합니다. |
road_address_name | str | 전체 도로명 주소를 출력합니다. |
About Us
팀원 소개

우소연
2016136081 wsy4533@naver.com
민초현
2017136041 angly97@naver.com