on
국토교통부 전월세 실거래가 공공 API 호출해서 웹페이지에 띄워보기(1...
국토교통부 전월세 실거래가 공공 API 호출해서 웹페이지에 띄워보기(1...
반응형
안녕하세요
오늘은 예전에 소개해드린 적이 있던 공공 API 중 하나를 호출해서
웹페이지에 정보를 띄워보려고 합니다~
일단 파이썬과 플라스크를 이용할 건데요
제가 사용하는 플라스크 웹개발 기본 세팅을 진행해보겠습니다
파이참을 실행하고 새로운 프로젝트를 만들게요
플라스크의 기본 디렉토리 구조도 세팅해주겠습니다
api_test/static // css 및 미디어 등 저장 위치(디렉토리)
api_test/templates // html 파일 저장 위치(디렉토리)
api_test/templates/index.html // 홈페이지 접속 첫 화면
api_test/app.py // flask를 활용한 코딩 파일
그럼 이제 index.html과 app.py에 시작 코드를 입력하겠습니다
index.html
전월세 실거래가 테스트
app.py
from flask import Flask, render_template, jsonify, request app = Flask(__name__) @app.route('/') def home(): return render_template('index.html') if __name__ == '__main__': app.run('0.0.0.0', port=5000, debug=True)
마지막으로 라이브러리를 설치하겠습니다
환경설정으로 들어가서 아래 라이브러리를 설치해줍니다
flask
pymongo
requests
bs4
이렇게하면 이제 개발을 위한 초기 세팅이 완료되었습니다
그럼 이제 api 호출 테스트를 한 번 해볼게요
이번에 제가 사용할 공공 api는 공공데이터포털에서 '국토교통부_아파트 전월세 자료' API인데요
여기서 전월세 실거래가를 호출해보려고 합니다
먼저 공공데이터포털에 접속해 '국토교통부_아파트 전월세 자료' API의 활용신청을 해볼게요
활용신청을 하고 승인을 받았다면 바로 진도를 넘어가볼게요
국토교통부_아파트 전월세 자료 API의 요청메시지는 다음과 같습니다
http://openapi.molit.go.kr:8081/OpenAPI_ToolInstallPackage/service/rest/RTMSOBJSvc/getRTMSDataSvcAptRent? LAWD_CD= [법정동코드] &DEAL;_YMD= [계약연월] &serviceKey;= [서비스키]
여기서 저희가 입력해야 하는 코드가 3가지가 있는데요
LAWD_CD -> [법정동코드] [예시 : 11110 (5자리값)]
DEAL_YMD -> [계약연월] [예시 : 202105 (6자리값)]
serviceKey -> [서비스키]
먼저 [서비스키]는 활용승인이 나면 부여되는 승인키를 의미하는데요
이건 변하는 값이 아니니 공공데이터포털의 마이페이지 내에
활용승인된 API를 선택해 개발계정 상세보기 화면으로 들어가
'일반 인증키(Encoding)'에 있는 키를 복사해서 붙여넣어주고 안건드리시면 됩니다
그리고 [법정동코드]와 [계약연월]은 조회를 위해 입력해야하는 값인데요
[법정동코드]는 행정표준코드관리시스템(www.code.go.kr)의 법정동코드 10자리 중 앞 5자리를 넣으시면 되는데요
여기서 [법정동코드]가 어떻게 구성되어 있는지 체계를 한 번 보고 가시는 것이
부동산과 관련된 API를 활용한 코딩을 하시는 데 도움이 될 것 같아서
한 번 준비해봤습니다
여기 법정동 코드의 10자리 중에서 '국토교통부_아파트 전월세 자료'에서는
앞 5자리만 요구하는 것은 시군구단위의 자료만 제공한다는 뜻이 되겠죠
제가 이 블로그를 쓰고 있는 이유는 API를 신청해두고 실제로 호출이 되기까지
시간이 조금 필요하기 때문인데요
이제 어느정도 시간이 흘러 호출이 가능할 것 같으니 바로 호출을 한 번 해보겠습니다
저는 부산에 살고있으니 부산진구의 2021년 5월 전월세 자료를 한 번 콜해보려고 합니다
먼저 법정동코드를 조회해볼게요
법정동코드를 조회하는 방법은 위에서 소개한 대로 행정표준코드관리시스템에서 가능한데요
행정표준코드관리시스템에 접속하면 위 이미지 처럼 '자주이용하는 코드' 2위에 법정동이 있습니다
거기서 원하는 지역을 검색하시면 됩니다
부산광역시 부산진구를 조회해보면 아래처럼 검색결과가 조회되는데
필요한 것은 빨간색 네모로 표시한 앞 5자리뿐이니 나머지는 무시합시다
그럼 다음처럼 값이 정리가 되는데요
LAWD_CD=26230
DEAL_YMD=202105
이것을 호출메시지에 대입하면 아래와 같이 됩니다
http://openapi.molit.go.kr:8081/OpenAPI_ToolInstallPackage/service/rest/RTMSOBJSvc/getRTMSDataSvcAptRent? LAWD_CD=26230 & DEAL_YMD=202105 &serviceKey;=[서비스키]
이제 호출을 해볼텐데요
호출은 다음포스팅에서 할게요 :)
반응형
from http://goranisogul.tistory.com/76 by ccl(A) rewrite - 2021-06-10 20:26:45