๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

๋ฐ˜์‘ํ˜•

๊ณต๊ณต๋ฐ์ดํ„ฐ API

(3)
Streamlit / BigQuery ๋ฅผ ํ™œ์šฉํ•œ ๋ฐฐํฌ (API) ๐ŸŽˆ ์‹ค์Šต ์ˆœ์„œ ๐Ÿ‘‰ ์„œ์šธ์‹œ ๋ถ€๋™์‚ฐ ์‹ค๊ฑฐ๋ž˜๊ฐ€ API ํฌ๋กค๋ง์œผ๋กœ ๊ฐ€์ ธ์˜ค๊ธฐ ๐Ÿ‘‰ JSON ํ˜•ํƒœ์˜ ๋ฐ์ดํ„ฐ๋ฅผ pandas ๋ฐ์ดํ„ฐํ”„๋ ˆ์ž„์œผ๋กœ ๋ณ€ํ™˜ํ•˜๊ธฐ ๐Ÿ‘‰ ๋ฐ์ดํ„ฐํ”„๋ ˆ์ž„์„ BigQuery์— ์ „์ฒด ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๊ธฐ ๐Ÿ‘‰ ์ €์žฅ๋œ ๋ฐ์ดํ„ฐํ”„๋ ˆ์ž„์„ BigQuery์—์„œ ์ผ๋ถ€ ์ปฌ๋Ÿผ๋งŒ ๋ถˆ๋Ÿฌ์˜ค๊ธฐ ๐ŸŽˆ ์‹ค์Šต 1 - API ํฌ๋กค๋ง์—์„œ BigQuery๋กœ ๋ฐ์ดํ„ฐ ์ €์žฅ ๐ŸŽฒ .streamlit/secrets.toml ์„ ์—ด๊ณ  ์•„๋ž˜์™€ ๊ฐ™์ด ์„ค์ •ํ•˜๊ธฐ ๐ŸŽฒ seoul_api_key : ์„œ์šธ ์—ด๋ฆฐ๋ฐ์ดํ„ฐ ๊ด‘์žฅ api key ๋ฅผ ์˜๋ฏธ ๐ŸŽฒ gcp_service_account ์•„๋ž˜ ๋‚ด์šฉ์€ api key ๋ฅผ json ํŒŒ์ผ๋กœ ์—ด๋ฉด ํ™•์ธ ๊ฐ€๋Šฅ # .streamlit/secrets.toml [public_data_api] seoul_api_key = 'your_api_key'..
๊ตฌ๊ธ€ ํด๋ผ์šฐ๋“œ BigQuery ํ™œ์šฉ์„ ์œ„ํ•œ ์„ธํŒ… (API) โœ‹ ์ƒˆ ํ”„๋กœ์ ํŠธ ๋งŒ๋“ค๊ธฐ โœ‹ API ๋ฐ ์„œ๋น„์Šค โœ‹ API ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ - Bigquery API ๊ฒ€์ƒ‰ โœ‹ ์‚ฌ์šฉ์ž ์ธ์ฆ ์ •๋ณด ๋งŒ๋“ค๊ธฐ โœ‹ ๋กœ์ปฌ / Streamlit ์—์„œ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•˜๋„๋ก Key ๋ฐ›๊ธฐ
์„œ์šธ์‹œ ๋ถ€๋™์‚ฐ ์ „์›”์„ธ๊ฐ€ ๋ฐ์ดํ„ฐ ์ˆ˜์ง‘ (๊ณต๊ณต๋ฐ์ดํ„ฐ API ํ™œ์šฉ) โ€ป ์„œ์šธ ์—ด๋ฆฐ๋ฐ์ดํ„ฐ ๊ด‘์žฅ ํ™ˆํŽ˜์ด์ง€(https://data.seoul.go.kr/) ๋ฅผ ํ†ตํ•ด ์‹ค์Šตํ–ˆ์Šต๋‹ˆ๋‹ค โœ‹ ์„œ์šธ ์—ด๋ฆฐ๋ฐ์ดํ„ฐ ๊ด‘์žฅ - API ๋ฐœ๊ธ‰ ๋ฐ ๋ฐ์ดํ„ฐ ์ˆ˜์ง‘ ๐ŸŽˆ ํ†ตํ•ฉ๊ฒ€์ƒ‰ - ๋ถ€๋™์‚ฐ ์ „์›”์„ธ๊ฐ€ ๐ŸŽˆ Open API ๐ŸŽˆ ์ธ์ฆํ‚ค ์‹ ์ฒญ ๐ŸŽˆ ์ธ์ฆํ‚ค ๋ฐœ๊ธ‰ ๐Ÿ‘‰ ๋ฐœ๊ธ‰๋œ ์ธ์ฆํ‚ค ๋ฅผ ๋ณต์‚ฌ ํ›„ api ์— ํ™œ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค ๐ŸŽˆ ์ƒ˜ํ”Œ URL ์–‘์‹ / ์š”์ฒญ์ธ์ž / ์ถœ๋ ฅ๊ฐ’ ํ™•์ธ ๐Ÿ‘‰ Open API ํ˜ธ์ถœ ํ›„ ๋‚˜์˜ค๋Š” ์ถœ๋ ฅ๊ฐ’์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค. ๐Ÿ‘‰ List_total_count ๊ฐ€ 1,000์ด ๋„˜์„ ๊ฒฝ์šฐ, Open API๋Š” 1ํšŒ์— 1,000๊ฑด์„ ๋„˜์„ ์ˆ˜ ์—†์œผ๋ฏ€๋กœ ๋ถ„๋ฆฌํ•ด์„œ ํ˜ธ์ถœ (๋ฐ˜๋ณต๋ฌธ ํ•„์š”!!) ๐ŸŽˆ ์›ํ•˜๋Š” ์กฐ๊ฑด์— ๋งž์ถฐ ์ƒ˜ํ”Œ ํ…Œ์ŠคํŠธ ๐ŸŽˆ ์–‘์‹์— ๋งž์ถฐ์„œ ์ž…๋ ฅํ•ด์•ผ ์›ํ•˜๋Š” ์ •๋ณด๊ฐ€ ๋‚˜์˜ด ๐Ÿ‘‰ ์‚ฌ์šฉํ•˜๊ณ ์ž ํ•˜๋Š” ์–ธ์–ด์— ๋งž๊ฒŒ ๊ฐ€์ด๋“œ๋ฅผ ๋‹ค์šด๋กœ๋“œ ๋ฐ›๋Š”๋‹ค ๐ŸŽˆ ..

๋ฐ˜์‘ํ˜•