์๋ ํ์ธ์. ๋ถ๋์ฐ ์ฒญ์ฝ ์ ๋ณด๋ OPEN API ํ์ฉํ์ฌ ์ ๋ณด๋ฅผ ๋ฐ์ ์ฌ ์ ์๋๊ฑฐ ์์๋์? ํด๋น ์ฌ์ดํธ์์๋ ๊ณต๊ณต๋ฐ์ดํฐ๋ ๋ค ๊ฐ์ ธ์ฌ ์ ์๋๋ฐ์. ๋งค๋ฒ ํฐ์คํ ๋ฆฌ์ ์ฒญ์ฝ ์ ๋ณด๋ฅผ ์๋์ผ๋ก ์ฌ๋ฆฌ๋๋ผ ๊ณ ๋ฏผํ๋๋ฐ, ๋ง์นจ ํด๋น ์ฌ์ดํธ๊ฐ ์์ด ์๋ํ ํ๋๋ก ๊ตฌํํ์๋ต๋๋ค.
์ ๋ณด
- ๊ฐ๋ฐ ํด : Google apps script
- ์ฌ์ฉ API : ๊ณต๊ณต๋ฐ์ดํฐ ํฌํธ OPEN API , ๋ค์ ์ด๋ฏธ์ง ๊ฒ์ OPEN API , ์ ํ๋ธ ๊ฒ์ OPEN API , ํฐ์คํ ๋ฆฌ OPEN API
๋ค๋ฅธ ํ๋ก๊ทธ๋จ ์ค์นํ๋ ๊ฒ ๋ณด๋ค ๊ตฌ๊ธ ์ฑ์คํฌ๋ฆฝํธ๋ ์ค์น ์์ด ๊ฐ๋ฐ ํ ์ ์์ด ์ ๊ฐ ์ฆ๊ฒจ ์ฌ์ฉํฉ๋๋ค. ํ์ด์ฌ, nodejs ๋ฑ๋ ์ข์ง๋ง ํน์ ๋๋ฌด ๋ถ๋ด์ค๋ฌ์ธ ๊ฒฝ์ฐ google app script๋ฅผ ํ์ฉํด๋ณด์ธ์
๊ฐ๋ฐ ๋ฐฉ๋ฒ
1. data.go.kr ์ ์ํ์ฌ ๋ก๊ทธ์ธ ํ๊ธฐ
2. ํ๊ตญ๋ถ๋์ฐ์_์ฒญ์ฝํ ๋ถ์์ ๋ณด ์กฐํ ์๋น์ค ๊ฒ์ํ์ฌ ํ์ฉ ์ ์ฒญ
๊ฐ๋ฐ ๊ณ์ ๋ ํ๋ฃจ 10,000๊ฑด ๋ฌด๋ฃ๋ก ์ฌ์ฉ์ด ๊ฐ๋ฅํ๊ธฐ ๋๋ฌธ์ ํฐ์คํ ๋ฆฌ์ ๋ฑ๋กํ๋ ๊ฑด์๋ก๋ ๋ฌด๋ฆฌ๊ฐ ์์ด ์ ๋ ์ด์๊ณ์ ์ ์ฒญ์ ๋ณ๋๋ก ํ์ง ์์์ต๋๋ค. ์๋ ์น์ธ์ด ๋๋ฏ๋ก ๋ณ๋ ์ ์ฐจ ์์ด ๋ฐ๋ก ์ฌ์ฉ์ด ๊ฐ๋ฅํฉ๋๋ค.
3. ์๋น์ค ์ ๋ณด๊ฐ๋ฉด ์ธ์ฆํค๊ฐ ์์ต๋๋ค. API๋ก ์ ๋ณด ์์ฒญ ์ ์ฒญ์ฝ ์ ๋ณด๋ฅผ ๋ฐ์ ์ ์์ต๋๋ค.
4. ์ฌ์ฉ ๊ฐ๋ฅํ API ๋ชฉ๋ก์ ๋๋ค. ์ ๋ ์ฐ์ APT ์์ธ๊ถ๋ง ๋ถ์์ ๋ณด๋ฅผ ๋ฐ์์ค๋๋ก ํ์์ต๋๋ค. ๋ค์์ ์คํผ์คํ ๋ ํด์ ์๋ ๋ฐํ ํด์ผ๊ฒ ์ต๋๋ค.
5. ์๋ ์์ค์ฝ๋๋ฅผ ๊ตฌ๊ธ app script์ ๋ฃ์ด๋ณด์ธ์ json ํ์ธํด๋ณด์ธ์
function getLHInfo()
{
var serviceKey = "์ธ์ฆํค๊ฐ";//๋ฐ๊ธ๋ฐ์ key๊ฐ
var returnType= "JSON"; //๋ฐ์ดํฐ ํํ
var cond_area = "์์ธ"; //์ฒญ์ฝ์ ๋ณด์ง์ญ
var eDay = "xxxx-xx-xx"; //๋๋ ์ง
var sDay = "xxxx-xx-xx"; //์์๋ ์ง
var url = "https://api.odcloud.kr/api/ApplyhomeInfoDetailSvc/v1/getAPTLttotPblancDetail?page=1&perPage=10&returnType="+ returnType + "&cond[SUBSCRPT_AREA_CODE_NM::EQ]="+ cond_area + "&cond[RCRIT_PBLANC_DE::LTE]="+ eDay + "&cond[RCRIT_PBLANC_DE::GTE]="+ sDay + "&serviceKey=" + serviceKey;
var response = UrlFetchApp.fetch(url,
{
method: "GET",
headers:{
"contentType": "application/json"
}
});
var json = response.getContentText();
var data = JSON.parse(json);
console.log("๋ฐ์ดํฐ ํ์ธ : " , data);
}
6. ์ด๋ฏธ์ง๋ ์ ํ๋ธ ๋งํฌ๊ฐ ํ์ํ ๊ฒฝ์ฐ
์๋ ๋ค์ ๊ฒ์ ๋ฐ ์ ํ๋ธ ๊ฒ์ ๊ธฐ๋ฅ์ ํ์ฉํ์ฌ ํ์ํ ์์๊ณผ ์ด๋ฏธ์ง๋ฅผ ๊ฐ์ ธ์ต๋๋ค.
7. ํฐ์คํ ๋ฆฌ ์๋๋ฐํ
8. ์๋๋ฐํํ ์ฒญ์ฝ์ฝํ ์ธ
๋จ์ ์ ์ธ๋ค์ผ์ ์ง์ ํ ์ ์์ต๋๋ค. ๊ทธ๋ฅ ๊ฐ๋ ๋ค๋ ค์ ์ธ๋ค์ผ๋ง ๋ฑ๋ก ํด์ผ ํ ๊ฒ ๊ฐ์์. ์์ ๊ฐ์ด HTML์ ๋ง๋ค์ด์ ์ ๋๋ ๊ฒ์ด ํ์ธ์ด ๋๋ฉด apps script์ ํธ๋ฆฌ๊ฑฐ ๊ธฐ๋ฅ์ ํ์ฉํ์ฌ ํ๋ฃจ์ 1๋ฒ ๋์ํ๋๋ก ์ค์ ํด์ฃผ์ธ์!
์ด์์ผ๋ก ์ฒญ์ฝ์ ๋ณด OPEN API ํ์ฉํ์ฌ ํฐ์คํ ๋ฆฌ ๊ฒ์๊ธ ๋ฑ๋กํ๋ ๋ฐฉ๋ฒ์ด์์ต๋๋ค.
๋๊ธ