일상의 문제 해결을 위한 주소 좌표 변환 앱 개발
1. 과제 주제
본 과제의 주제는 주소 목록을 자동으로 위도와 경도로 변환하는 생활형 지오코딩 앱 개발이다.
일상생활이나 업무에서 아파트, 상가, 공공시설, 현장조사 지점 등의 주소를 정리해야 하는 경우가 많다. 특히 주소를 지도 위에 표시하거나 공간정보 자료로 활용하려면 주소뿐만 아니라 위도와 경도 정보가 필요하다. 그러나 주소를 하나씩 지도 서비스에서 검색하여 좌표를 확인하고 다시 표에 입력하는 작업은 시간이 많이 걸리고 오류가 발생하기 쉽다.
이 문제를 해결하기 위해 CSV 파일에 저장된 주소 목록을 불러오고, 카카오 주소 검색 API를 이용하여 각 주소의 위도와 경도를 자동으로 찾아 저장하는 파이썬 앱을 개발하였다.

2. 문제 정의
1단계: 문제 정의
일상에서 겪는 불편함은 다음과 같다.
- 주소 목록은 가지고 있지만, 각 주소의 위도와 경도를 직접 찾는 과정이 번거롭다.
- 주소가 많을 경우 지도 서비스에서 하나씩 검색해야 하므로 시간이 오래 걸린다.
- 사람이 직접 복사하여 붙여 넣는 과정에서 오타나 누락이 생길 수 있다.
- 공간정보 수업이나 업무에서 주소 데이터를 지도에 활용하려면 좌표 변환 과정이 필요하다.
따라서 해결해야 할 문제는 다음과 같이 정리할 수 있다.
여러 개의 주소가 들어 있는 CSV 파일을 불러와, 각 주소를 자동으로 위도와 경도로 변환하고, 그 결과를 다시 파일로 저장하는 앱이 필요하다.
3. 문제 분석
2단계: 문제 분석
문제를 해결하기 위해 필요한 정보와 기능을 나누어 분석하였다.
첫째, 입력 데이터가 필요하다.
입력 파일은 CSV 형식이며, 주소가 들어 있는 열이 있어야 한다. 사용자는 자신이 가지고 있는 주소 목록 파일을 선택할 수 있어야 한다.
둘째, 주소를 좌표로 변환하는 방법이 필요하다.
주소를 위도와 경도로 변환하기 위해 카카오 주소 검색 API를 사용하였다. 이 API는 주소 문자열을 입력하면 해당 주소의 좌표 정보를 JSON 형식으로 반환한다.
셋째, 사용자가 쉽게 사용할 수 있는 화면이 필요하다.
코드만 실행하는 방식은 초보자에게 어렵기 때문에, 파일 선택 버튼과 실행 버튼이 있는 GUI 앱 형태로 구성하였다.
넷째, 결과 저장 기능이 필요하다.
주소 변환이 끝나면 원래 데이터에 위도와 경도 열을 추가하여 새로운 CSV 파일로 저장하도록 하였다.
4. 문제 해결 방안 탐색
3단계: 문제 해결 방안 탐색하기
이 문제를 해결하는 방법은 크게 두 가지로 나눌 수 있다.
첫째, 기존 방식이다.
기존 방식은 사용자가 카카오맵이나 네이버지도에서 주소를 하나씩 검색하고, 검색 결과의 위치를 확인한 뒤 좌표를 직접 입력하는 방식이다. 이 방식은 별도의 프로그램이 필요 없다는 장점이 있지만, 주소가 많아지면 시간이 오래 걸리고 실수가 발생하기 쉽다.
둘째, 인공지능과 프로그래밍을 활용한 방식이다.
인공지능 어시스턴트를 활용하여 파이썬 코드 구조를 설계하고, 카카오 API 사용 방법, CSV 파일 처리 방법, GUI 구성 방법을 도움받아 앱을 구현할 수 있다. 이 방식은 처음 코딩을 배우는 사람도 인공지능의 도움을 받아 실제 작동하는 앱을 만들 수 있다는 장점이 있다.
본 과제에서는 두 번째 방식을 선택하였다. ChatGPT와 같은 인공지능 어시스턴트를 활용하여 프로그램 구조를 설계하고, 파이썬으로 주소 좌표 변환 앱을 구현하였다.
5. 인공지능 활용 내용
앱 개발 과정에서 인공지능 어시스턴트를 다음과 같이 활용하였다.
- 기존 R 코드를 파이썬 코드로 변환하는 방법을 질문하였다.
- 카카오 주소 검색 API를 파이썬에서 호출하는 방법을 도움받았다.
- CSV 파일을 읽고 저장하는 pandas 사용법을 확인하였다.
- tkinter를 이용하여 GUI 앱을 만드는 방법을 도움받았다.
- API 키를 저장하고 다시 불러오는 구조를 설계하였다.
- 실행 파일로 배포하기 위한 PyInstaller 사용 방법과 배치 파일 작성 방법을 도움받았다.
이를 통해 단순히 코드를 복사하는 것이 아니라, 문제를 해결하기 위한 알고리즘과 프로그램 흐름을 이해하면서 앱을 완성하였다.
6. 앱 구현 개요
4단계: 인공지능 프로그래밍으로 앱 구현하기
개발한 앱의 기본 작동 과정은 다음과 같다.
- 사용자가 CSV 파일을 선택한다.
- 사용자가 주소가 들어 있는 열 이름을 지정한다.
- 앱은 CSV 파일을 읽어 주소 목록을 가져온다.
- 각 주소를 카카오 주소 검색 API에 전달한다.
- API 응답에서 위도와 경도를 추출한다.
- 원래 데이터에 위도와 경도 열을 추가한다.
- 변환 결과를 새로운 CSV 파일로 저장한다.
7. 사용한 주요 기술
본 앱 개발에 사용한 주요 기술은 다음과 같다.
- Python
- pandas
- requests
- tkinter
- Kakao Local API
- CSV 파일 입출력
- JSON 데이터 처리
8. 핵심 알고리즘
앱의 핵심 알고리즘은 다음과 같다.
- CSV 파일을 읽는다.
- 주소 열에서 주소 문자열을 하나씩 가져온다.
- 카카오 주소 검색 API에 주소를 요청한다.
- 응답 결과가 있으면 x, y 값을 추출한다.
- x 값은 경도, y 값은 위도로 저장한다.
- 응답 결과가 없으면 빈 값으로 처리한다.
- 전체 결과를 CSV 파일로 저장한다.
9. 기대 효과
이 앱을 사용하면 다음과 같은 효과를 기대할 수 있다.
- 많은 주소를 한 번에 위도와 경도로 변환할 수 있다.
- 수작업에 비해 시간을 절약할 수 있다.
- 좌표 입력 과정에서 발생하는 실수를 줄일 수 있다.
- 공간정보 수업, 현장조사, 부동산 자료 정리 등에 활용할 수 있다.
- 인공지능을 활용하여 실제 생활 문제를 해결하는 프로그래밍 경험을 얻을 수 있다.
10. 한계와 개선 방향
본 앱은 카카오 주소 검색 API를 사용하기 때문에 인터넷 연결이 필요하다. 또한 API 키가 올바르게 입력되어야 하며, 주소 형식이 너무 불완전하면 좌표를 찾지 못할 수 있다.
앞으로 개선할 수 있는 방향은 다음과 같다.
- 주소 검색 실패 목록을 따로 저장하는 기능 추가
- 엑셀 파일 직접 불러오기 기능 추가
- 지도 위에 결과를 표시하는 기능 추가
- 여러 주소 열을 선택할 수 있는 기능 추가
- 변환 진행률을 더 자세히 보여주는 기능 추가
11. 결론
본 과제에서는 일상에서 자주 발생하는 주소 좌표 변환 문제를 해결하기 위해 파이썬 기반 지오코딩 앱을 개발하였다. 인공지능 어시스턴트를 활용하여 문제 정의, 알고리즘 설계, 코드 작성, 오류 수정 과정을 진행하였다.
이를 통해 인공지능은 단순히 답을 제공하는 도구가 아니라, 실제 문제를 해결하는 프로그래밍 학습 도우미로 활용될 수 있음을 확인하였다. 개발한 앱은 주소 목록을 자동으로 위도와 경도로 변환하여 공간정보 자료 작성과 업무 효율 향상에 도움을 줄 수 있다.
'컴퓨터과학과' 카테고리의 다른 글
| 티스토리 발행 중 polyfill.io 로그인 창이 뜰 때 대처법 (2) | 2026.06.15 |
|---|---|
| 티스토리 블로그 활용 강좌 교수·학습계획안 (0) | 2026.06.11 |
| 홈화면에 바로가기, 추가와 설치 차이 (1) | 2026.06.06 |
| 토큰과 트랜스포머 (0) | 2026.05.20 |
| NLP와 LLM (0) | 2026.05.19 |
댓글