from overpass import load_pois, OverpassApiError from models import POI import logging from queries.bergbahn import BERGBAHN_QUERY from queries.restaurant import RESTAURANT_QUERY # --------------------------------------------------------------------------- # Logging konfigurieren # --------------------------------------------------------------------------- # Erinnerung: Log-Levels -> DEBUG, INFO, WARNING, ERROR, CRITICAL logging.basicConfig( level=logging.INFO, format="%(asctime)s [%(levelname)s] %(message)s", datefmt="%H:%M:%S", ) logger = logging.getLogger(__name__) # --------------------------------------------------------------------------- # Konfiguration # --------------------------------------------------------------------------- BBOXEN = { "davos": (46.72, 9.70, 46.92, 10.00), "schweiz": (45.8, 5.9, 47.8, 10.5), } QUERY = {"bergbahn": BERGBAHN_QUERY} # --------------------------------------------------------------------------- # Hauptlogik # --------------------------------------------------------------------------- def main() -> None: query_name = list(QUERY.keys())[0] for name, bbox in BBOXEN.items(): logger.info(f"Starte Abfrage für Query: {query_name}, '{name}' mit bbox={bbox}") try: pois: list[POI] = load_pois(overpass_query=QUERY.get(query_name,""), bbox=bbox) except OverpassApiError as exc: logger.error(f"Fehler bei '{name}': {exc}") continue logger.info(f"\n{name}: {len(pois)} POIs gefunden") for poi in pois: logger.info(f" {poi.id}: ({poi.lat}, {poi.lon})") if __name__ == "__main__": main()