반응형
https://console.cloud.google.com/
대충 입력
개발자 연락처 정보
도 입력
Geocoding API를 검색해서 '사용'을 눌러줘야 함
그렇지 않으면 지오코딩이 제대로 수행되지 않음
import pandas as pd
import requests
import time
# Google Maps API 키
API_KEY = "YOUR_GOOGLE_MAPS_API_KEY"
# CSV 파일 경로 (경위도 데이터가 들어 있는 파일)
input_file = "coordinates.csv" # 입력 파일 이름
output_file = "addresses.csv" # 출력 파일 이름
# CSV 파일 읽기
data = pd.read_csv(input_file)
# 경위도 열 이름 지정 (CSV 파일에 따라 수정)
latitude_col = "latitude" # 위도 컬럼 이름
longitude_col = "longitude" # 경도 컬럼 이름
# 결과를 저장할 새로운 열
data["address"] = ""
# Geocoding API 호출 함수
def get_address(lat, lon):
url = f"https://maps.googleapis.com/maps/api/geocode/json?latlng={lat},{lon}&key={API_KEY}"
response = requests.get(url)
if response.status_code == 200:
results = response.json().get("results")
if results:
return results[0].get("formatted_address")
return None
# 각 경위도에 대해 주소 변환
for index, row in data.iterrows():
lat = row[latitude_col]
lon = row[longitude_col]
address = get_address(lat, lon)
data.at[index, "address"] = address
print(f"Processed ({lat}, {lon}): {address}")
time.sleep(0.1) # API 제한을 피하기 위해 대기 시간 추가
# 결과 저장
data.to_csv(output_file, index=False)
print(f"주소 변환 완료. 결과가 {output_file}에 저장되었습니다.")
반응형
'🖥️ IT, 컴퓨터 > 🐍 Python' 카테고리의 다른 글
[Python] 구글 지도 위에 마커 올리기 (gmplot과 Google Maps JavaScript API 이용) (0) | 2025.01.17 |
---|---|
[Python] matplotlib으로 인구 피라미드 시각화하기 (0) | 2024.12.24 |
[Python] BeautifulSoup 라이브러리란? :: html 파싱, Selenium과의 차이 (0) | 2024.11.20 |
[Python] Selenium 라이브러리란? :: 크롤링, 웹스크래핑 (0) | 2024.11.20 |
[Python] 파이썬 BeautifulSoup 뷰티풀수프로 html 파싱해 원하는 부분 표로 만들기 :: 공차 매장명, 주소 추출 (0) | 2024.11.17 |
댓글