puntoOrganicoGeocoding / geocoding.py
perezcatriel's picture
[FIX] modulo geocoding
1588088
import os
import requests
import streamlit as st
from dotenv import load_dotenv
load_dotenv()
API_KEY = os.getenv('API_KEY')
BASE_URL = os.getenv('BASE_URL')
error_index = 1
def geocode_address(address):
api_key = API_KEY
base_url = BASE_URL
params = {
'address': address,
'key': api_key
}
global error_index
try:
response = requests.get(base_url, params=params)
data = response.json()
if data['status'] == 'OK' and len(data['results']) > 0:
location = data['results'][0]['geometry']['location']
latitude = location['lat']
longitude = location['lng']
return latitude, longitude
else:
st.error(
f'Error {error_index}: No se encontraron resultados para la dirección especificada. '
'Cargaste la API_KEY: https://console.cloud.google.com/google/maps-apis/credentials'
)
error_index += 1
except requests.exceptions.RequestException as e:
error_index += 1 # Índice para los errores
st.error(f'Error {error_index}: Error en la solicitud: {e}')
direcciones = [
'San Martín y Garibaldi',
'Avenida Emilio Civit s/n',
'Parque General San Martín',
'Calle Sarmiento, entre las calles Patricias Mendocinas y Garibaldi',
'Calle Belgrano y España',
'Calle Las Heras 50',
'Plaza Independencia',
'Avenida España y Costanera',
'Calle 9 de Julio 1228',
'Calle Chile 1754',
'Avenida Arístides Villanueva',
'Avenida Emilio Civit y España',
'Calle Chile y Avenida Colón',
'Calle Emilio Civit y Avenida San Martín',
'Acceso Este y Avenida San Francisco de Asís',
'Calle San Martín y Avellaneda',
'Plaza Pedro del Castillo',
'Calle San Martín y Avenida España',
'Calle Emilio Civit y Avenida San Martín',
'Avenida España',
'Calle Avellaneda y Patricias Mendocinas',
'Parque General San Martín',
'Ruta Nacional 7',
'Avenida Costanera y calle Peltier',
'Calle Montecaseros 2625',
'Calle Francisco Delgado 1220',
'Ruta Provincial 86, s/n',
'Ruta 15, km 23',
'Calle San Martín 2044',
'Ruta 7 y Acceso Sur'
]
coordenadas = []
for direccion in direcciones:
resultado = geocode_address(direccion + ', Capital, Mendoza, Argentina')
if resultado:
coordenadas.append(resultado)
else:
coordenadas.append((None, None))