안녕하세요
오늘은 예전에 소개해드린 적이 있던 공공 API 중 하나를 호출해서
웹페이지에 정보를 띄워보려고 합니다~
일단 파이썬과 플라스크를 이용할 건데요
제가 사용하는 플라스크 웹개발 기본 세팅을 진행해보겠습니다
파이참을 실행하고 새로운 프로젝트를 만들게요
플라스크의 기본 디렉토리 구조도 세팅해주겠습니다
api_test/static // css 및 미디어 등 저장 위치(디렉토리)
api_test/templates // html 파일 저장 위치(디렉토리)
api_test/templates/index.html // 홈페이지 접속 첫 화면
api_test/app.py // flask를 활용한 코딩 파일
그럼 이제 index.html과 app.py에 시작 코드를 입력하겠습니다
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
<title>전월세 실거래가 테스트</title>
<!-- bootstrap -->
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css"
integrity="sha384-Gn5384xqQ1aoWXA+058RXPxPg6fy4IWvTNh0E263XmFcJlSAwiGgFAW/dAiS6JXm"
crossorigin="anonymous">
<!-- jQuery, popper, bootstrap -->
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.12.9/umd/popper.min.js"
integrity="sha384-ApNbgh9B+Y1QKtv3Rn7W3mgPxhU9K/ScQsAP7hUibX39j7fakFPskvXusvfa0b4Q"
crossorigin="anonymous"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/js/bootstrap.min.js"
integrity="sha384-JZR6Spejh4U02d8jOt6vLEHfe/JQGiRRSQQxSfFWpi1MquVdAyjUar5+76PVCmYl"
crossorigin="anonymous"></script>
</head>
<body>
</body>
</html>
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=[서비스키]
이제 호출을 해볼텐데요
호출은 다음포스팅에서 할게요 :)
국토교통부 전월세 실거래가 공공 API 호출해서 웹페이지에 띄워보기(6-프런트앤드 화면 만들고 콘솔에 결과 띄우기 시도) (0) | 2021.06.17 |
---|---|
국토교통부 전월세 실거래가 공공 API 호출해서 웹페이지에 띄워보기(5-프런트앤드와 백앤드 통신 시도 준비) (1) | 2021.06.17 |
국토교통부 전월세 실거래가 공공 API 호출해서 웹페이지에 띄워보기(4-API호출을 함수로 선언하고 서버에서 실행해보기) (0) | 2021.06.17 |
국토교통부 전월세 실거래가 공공 API 호출해서 웹페이지에 띄워보기(3-API 호출 성공) (0) | 2021.06.16 |
국토교통부 전월세 실거래가 공공 API 호출해서 웹페이지에 띄워보기(2-샘플코드 파이썬3로 변환하기) (1) | 2021.06.11 |
댓글 영역